1. Comparatif de quelques systèmes de fichiers

Lors de l'installation, vous pouvez choisir différents systèmes de fichiers pour vos partitions, c'est-à-dire, formater vos partitions selon différents algorithmes.

À moins d'être un spécialiste, le choix n'est pas forcément évident. Nous vous proposons ici une présentation rapide des trois systèmes de fichiers les plus courants, tous disponibles dans Mandriva Linux.

1.1. Les différents systèmes de fichiers utilisables

1.1.1. Ext2

Le Second Extended File System (en abrégé ext2FS ou ext2) est le système de fichiers par défaut de GNU/Linux depuis de nombreuses années. Il est le successeur de Extended File System (d'où le « Second »), dont il corrige certains problèmes et limitations.

Ext2 respecte les standards usuels des systèmes de fichiers pour systèmes de type Unix. Dès sa conception, il était destiné à évoluer, tout en offrant une grande robustesse et de bonnes performances.

[Note]Note

Il doit être démonté afin d'être redimensionné.

1.1.2. Ext3

Comme le nom le laisse supposer, le Third Extended File System (troisième système de fichiers étendu) est appelé à devenir le successeur de Ext2. Il conserve une compatibilité avec celui-ci, mais ajoute une fonctionnalité très intéressante : la journalisation.

Un des problèmes majeurs avec les systèmes de fichiers « traditionnels » comme Ext2, est leur faible tolérance aux pannes, telles qu'un arrêt brutal du système (coupure de courant ou plantage logiciel). En général, de tels événements se soldent par un examen très long de la structure du système de fichiers, des tentatives de corrections d'erreurs, parfois pour aboutir à une corruption étendue du système de fichiers. Donc, une perte partielle ou totale des données enregistrées.

La journalisation est une réponse à ce problème. Pour simplifier, disons que le principe consiste à enregistrer les actions à effectuer dans un journal avant de les effectuer réellement, un peu comme un capitaine de bateau note dans son journal de bord les événements de la journée. Le résultat est un système de fichiers qui reste toujours cohérent. En cas de problème, l'examen du système de fichiers consiste à regarder le journal et effectuer les actions qui n'ont pas eu le temps d'être effectuées avant le crash. Le temps de vérification d'un système de fichiers n'est donc plus proportionnel à la taille de celui-ci, mais à son degré d'utilisation.

Ext3 propose donc cette technologie, tout en conservant une structure interne basée sur Ext2FS, ce qui assure une excellente compatibilité. Cela rend même possible le basculement de ext2 vers Ext3 et inversement.

[Note]Note

Tout comme ext2, il doit être démonté afin d'être redimensionné.

1.1.3. ReiserFS

Au contraire de ext3, reiserfs est un système de fichiers recréé en partant de zéro. Il est également journalisé comme ext3, mais sa structure interne est radicalement différente notamment car il utilise le concept d'arbre binaire inspiré des bases de données, et a aussi une taille de bloc variable, ce qui le rend particulièrement performant pour des utilisations impliquant de très nombreux fichiers de petite taille. Il est aussi performant pour des fichiers de grande taille, en faisant donc un système très polyvalent.

[Note]Note

Ce système de fichiers peut être redimensionné « à la volée », sans avoir besoin de le démonter.

1.1.4. JFS

JFS est le système de fichiers journalisé développé et utilisé par IBM. Initialement propriétaire et fermé, IBM a récemment décidé d'ouvrir l'accès au monde du Logiciel Libre à ce système de fichiers. Sa structure interne est proche de celle de ReiserFS.

[Avertissement]Avertissement

Ce système de fichiers ne peut être redimensionné sous GNU/Linux.

1.1.5. XFS

XFS est le système de fichiers journalisé crée par SGI et utilisé par son système d'exploitation IRIX. Propriétaire et fermé au commencement, SGI a décidé de l'ouvrir au monde du Logiciel Libre. Sa structure interne a de nombreuses fonctionnalités comme un contrôle en temps réel de la bande passante, l'optimisation de l'espace disque, et les systèmes de fichiers distribués (clustered file systems (pas dans la version libre).

[Avertissement]Avertissement

Avec GNU/Linux, ce système de fichiers peut seulement être agrandi. le redimensionnement ne peut se faire qu'avec un système de fichier monté.

1.2. Différences entre ces systèmes de fichiers

Tableau 4.1. Caractéristiques des systèmes de fichiers

 Ext2Ext3ReiserFSJFSXFS
StabilitéExcellenteTrès bonneBonneMoyenneBonne
Outils pour récupérer un fichier effacéOui (complexe)Oui (complexe)NonNonNon
Temps de redémarrage après un crashLong, voire très longRapideTrès rapideTrès rapideTrès rapide
Intégrité des données en cas de crashEn général, bonne, mais il existe des risques de pertes partielles ou totales non négligeablesTrès bonneMoyenne[a]Très bonneTrès bonne
Support ACLOuiOuiNonNonOui

[a] Il est possible d'améliorer les résultats de la récupération d'un crash en enregistrant dans le journal les données en plus des méta-données, en ajoutant l'option data=journal au fichier /etc/fstab.

La taille maximale d'un fichier dépend d'un grand nombre de paramètres (comme la taille des blocs pour ext2/ext3), et est susceptible d'évoluer suivant la version du noyau et l'architecture du système.

Avec le noyau 2.6.X, cette limite sur la taille des blocs peut être étendue en utilisant un noyau compilé avec le support Large Block Device (CONFIG_LBD=y). Pour plus d'information, consultez Adding Support for Arbitrary File Sizes to the Single UNIX Specification, Large File Support in Linux, et Large Block Devices. Avec le Large Block Device et un système de fichiers le permettant, on peut atteindre plusieurs To sans astuce liée au système de fichiers comme le fait JFS pour la taille du système de fichiers.

1.3. Et question performances ?

Il est toujours très difficile de comparer les performances entre systèmes de fichiers. Tous les tests présentent diverses limitations, et les résultats doivent toujours être interprétés avec précaution, car des tests effectués il y a quelques mois ou quelques semaines sont déjà trop anciens. Par ailleurs, les performances physiques des matériels actuels (notamment des disques durs) estompent les différences.

Chaque système présente ses avantages et ses inconvénients. En fait, tout dépend de l'utilisation que vous comptez faire de votre ordinateur. Une simple machine de bureau peut se contenter de ext2. Pour un serveur, on préférera sans doute un système de fichier journalisé comme ext3. reiserfs, peut-être du fait de ses origines, est plutôt recommandé pour un serveur de base de données. JFS sera préféré dans les cas où l'exigence principale est la rapidité du système de fichiers. XFS est intéressant si vous recherchez l'une ou l'autre de ses fonctionnalités avancées. Pour un usage « normal », ces quatre systèmes de fichiers vous donnent approximativement les mêmes résultats, et ils possèdent tous des options différentes pour en faire un usage particulier. Référez-vous à la documentation du système de fichiers pour plus de renseignements.