Lorsque vous formatez un disque dur pour installer votre système Linux, vous devez choisir le meilleur système de fichiers Linux à utiliser. En 2020, l'option la plus populaire est EXT4. Mais est-ce la meilleure option, et si vous aviez des alternatives, devriez-vous les choisir ? Voyons les différentes options (possibles).
EXT4
Le "Fourth Extended Filesystem" est entièrement rétrocompatible avec EXT2 et EXT3 et est considéré comme la norme pour la plupart des distributions Linux, restant aussi populaire que ses prédécesseurs.
C'est l'une des options les plus sûres et les plus stables disponibles aujourd'hui puisqu'elle prend en charge la journalisation, empêchant (autant que possible) la perte de données après un plantage du système ou lors d'une coupure de courant.
Deux de ses caractéristiques les plus importantes sont les "étendues" et l'"allocation retardée", qui gèrent intelligemment la façon dont les données sont écrites sur le support de stockage afin d'améliorer les performances et de réduire la fragmentation.
BtrFS
Le "système de fichiers b-tree" a été initialement conçu par Oracle et n'a cessé de gagner en popularité, au point que beaucoup le considèrent comme le véritable successeur de la lignée EXT.
Btrfs est doté de fonctionnalités avancées, telles que la défragmentation automatique et la compression transparente (ndlr : signifie que chaque fichier de la partition est automatiquement compressé. Cela permet non seulement de réduire la taille des fichiers, mais aussi d'améliorer les performances). Elle suit une méthode de copie en écriture, sauvegardant les nouvelles itérations de données et de métadonnées au lieu d'affecter les données et métadonnées existantes ("shadowing"). Cela permet également de prendre des instantanés de différents états du système de fichiers ainsi que de faciliter la réplication, la migration et les sauvegardes incrémentielles. Les vérifications en ligne et hors ligne du système de fichiers réduisent encore davantage les risques de perte de données.
BtrFS supporte nativement le RAID, mais il ne suit pas l'approche typique du RAID striping logiciel ou du miroir de bloc matériel. Il garantit plutôt que chaque bloc sur un appareil a une copie sur un autre et conserve les CRC (ndlr : contrôle de redondance cyclique ou CRC (cyclic redundancy check) est un outil logiciel permettant de détecter les erreurs de transmission ou de transfert par ajout, combinaison et comparaison de données redondantes, obtenues grâce à une procédure de hachage.) pour toutes les données. Ainsi, en cas de panne, il peut extraire des informations des sauvegardes et des sommes de contrôle pour reconstruire les données corrompues ou manquantes.
Il convient de noter que le BtrFS est également "compatible avec les SSD" puisqu'il désactive automatiquement ses fonctions qui sont utiles pour les disques durs mécaniques mais qui pourraient user les SSD.
XFS
XFS a été créé par Silicon Graphics il y a près de trois décennies pour leurs stations de travail graphiques spécialisées dans le rendu de graphiques 3D.
C'est pourquoi XFS reste l'une des meilleures options pour les systèmes qui lisent et écrivent constamment des données. Grâce à l'utilisation de "groupes d'allocation" - des parties du système de fichiers qui contiennent leurs propres inodes (ndlr : Un nœud d'index ou inode (contraction de l'anglais index et node) est une structure de données contenant des informations à propos d'un fichier ou répertoire stocké dans certains systèmes de fichiers (notamment de type Linux/Unix).) et de l'espace libre - il est possible pour plusieurs threads de lire et d'écrire des données en même temps et en parallèle. La prise en charge de l'allocation différée, des inodes alloués dynamiquement et des algorithmes de lecture anticipée avancés lui permettent d'atteindre d'excellentes performances, notamment sur les pools de stockage à grande échelle pouvant atteindre des centaines de To.
Sa prise en charge de la journalisation est toutefois limitée par rapport à d'autres solutions plus modernes, et on peut dire qu'elle est plus sujette à la perte de données. De plus, il n'est pas adapté à des scénarios plus typiques de la vie quotidienne, comme la suppression d'un groupe de photos dans le dossier "Photos". En d'autres termes, c'est très bien si vous créez votre propre centre de données, mais peut-être pas pour un usage personnel classique.
F2FS
L'un des systèmes de fichiers (relativement) récents, le "Flash-Friendly File System", est l'une des meilleures options pour le stockage en flash.
Initialement créé à cette fin par Samsung, F2FS divise le support de stockage en parties plus petites qui contiennent des zones comprenant également des parties plus petites, etc. et essaie d'en utiliser un grand nombre au lieu de réutiliser les mêmes. Combiné à son support pour TRIM/FITRIM, cela le rend plus adapté aux médias basés sur flash qui sont livrés avec un nombre fini d'écritures.
Il est inutile de s'attarder sur les fonctionnalités de F2FS, car il n'excelle en rien par rapport à toutes les autres solutions en termes de vitesse ou de sécurité des données, ni de l'utiliser avec des médias classiques, où tous les autres systèmes de fichiers auraient un meilleur ensemble de fonctionnalités. Mais l'histoire change si l'on parle de stockage en flash, pour lequel il a été explicitement créé.
OpenZFS/ZFS
OpenZFS est une bifurcation du système de fichiers Zettabyte (ZFS) qui est apparu initialement sur Solaris de Sun. Jusqu'en 2010, ZFS pouvait être utilisé sur Linux principalement par le biais de FUSE, en raison de problèmes de licence. C'est après 2010 que son développement a commencé à s'ouvrir, et en 2016 Ubuntu a pris en charge, par défaut, sa version open-source. Depuis lors, lorsque les gens parlent de "ZFS", ils parlent généralement de sa variante ouverte au lieu de Solaris ZFS - qui continue également d'évoluer mais sur une voie parallèle.
ZFS diffère de toutes les autres variantes car il combine le système de fichiers avec un gestionnaire de volume. De ce fait, il ne gère pas seulement les fichiers et les répertoires, mais aussi le support physique sur lequel il réside. Grâce à cela, chaque périphérique de stockage peut être affecté à un pool qui est traité comme une ressource unique. Si jamais vous manquez d'espace, vous pouvez ajouter de nouvelles unités de stockage à ce pool pour l'étendre, en laissant ZFS s'occuper des détails.
En gérant les médias lui-même, ZFS excelle également dans sa prise en charge du RAID. Vous pouvez mettre en place des matrices RAID de la plupart des types (RAID 0, 2, 5, etc.) mais aussi utiliser son approche "RAIDZ". Contrairement aux matrices RAID typiques, le RAIDZ utilise des bandes de largeur variable entre les disques qu'il inclut, ce qui augmente sa tolérance sur la perte de données après une panne de courant.
Le ZFS suit également une approche de copie en écriture, où au lieu de modifier les données existantes, il enregistre uniquement les changements ("deltas") entre l'ancienne et la nouvelle version. Cela permet un stockage transparent et intelligent de plusieurs copies de données, sans prendre beaucoup de place, qui peuvent fonctionner comme des sauvegardes ou des instantanés. L'utilisateur peut revenir aux états précédents du système de fichiers, en inversant les modifications, ou faire l'inverse : retirer toutes les modifications dans des clones de données existantes.
Ce sont là quelques-unes des caractéristiques qui l'aident à éliminer presque toute possibilité de perte de données - du moins, en théorie.
JFS
Le Journaling File System d'IBM a été l'un des premiers systèmes de fichiers à prendre en charge la journalisation, ce qui a permis de réduire les risques de perte de données. Il utilise des partitions étendues comme beaucoup d'autres alternatives modernes et des groupes d'allocation comme XFS, visant à offrir des performances élevées en lecture/écriture.
En ne donnant pas la priorité à une seule fonctionnalité, il est très polyvalent et peut être utilisé pour différentes situations de travail et pour différents besoins. Malheureusement, cela signifie aussi qu'il n'excelle en rien. En outre, il présente des problèmes que beaucoup de gens considéreraient comme négatifs lors du choix d'un système de fichiers pour le stockage. Par exemple, il peut retarder indéfiniment la mise à jour de son journal, ce qui augmente les risques de perte de données et annule presque le fait qu'il s'agit d'un système de fichiers de journalisation. Il est meilleur pour les écritures parallèles qui sont les plus utiles aux serveurs et aux grandes bases de données, mais il est moins performant que l'EXT4 dans les scénarios d'utilisation les plus courants.
C'est probablement la raison pour laquelle il n'est pas aussi populaire que d'autres systèmes de fichiers, qui peuvent soit fonctionner plus rapidement, soit être mieux protégés contre la perte de données.
Lequel utiliser ?
Il y a une raison pour laquelle EXT4 est le choix par défaut pour la plupart des distributions Linux. Il est éprouvé, testé, stable, performant et largement soutenu. Si vous recherchez la stabilité, EXT4 est le meilleur système de fichiers Linux pour vous.
Si vous n'avez pas peur d'avoir affaire à un écosystème un peu moins mature, BtrFS est peut-être la meilleure option pour vous.
Pour une utilisation sur serveur où vous souhaitez éliminer presque entièrement toute possibilité de perte de données et où la stabilité est le maître mot, vous pouvez vous tourner vers ZFS. Mais pour en tirer le meilleur parti, préparez-vous à beaucoup lecture. Heureusement, nous pouvons vous aider à le mettre en place.
Pour les médias flash, F2FS est la meilleure option par défaut.
Quel que soit le système de fichiers que vous choisissez, n'oubliez pas d'effacer complètement votre disque dur au préalable si vous voulez rendre son contenu existant presque irrécupérable.
source :
https://www.maketecheasier.com/choosing-the-best-linux-filesystem/