Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
systeme_de_fichiers [Le 22/12/2017, 09:19]
41.142.252.9 [Les systèmes de fichiers sous GNU-Linux / macOS / Windows]
systeme_de_fichiers [Le 24/04/2020, 17:50]
37.166.12.69 [Systèmes de fichiers ZFS]
Ligne 3: Ligne 3:
 ------ ------
  
-====== Les systèmes de fichiers sous GNU-Linux / macOS / Windows ====== +======= Les systèmes de fichiers sous GNU-Linux / macOS / Windows ====== 
-so_TFK Ayoub ajabid+Les **systèmes de fichiers** (il en existe de multiples) gèrent l'​organisation des informations mémorisées sur les périphériques de stockage de l'​ordinateur. Chacun offre des avantages pour certains types d'​utilisation... mais des désavantages pour d'​autres utilisations. Connaître leurs principales caractéristiques est nécessaire pour l'​utilisation optimale d'un équipement. C'est comme un classeur. 
 ===== Qu'​est-ce qu'un système de fichiers ? ===== ===== Qu'​est-ce qu'un système de fichiers ? =====
 Dans le cœur d'un ordinateur, tout est constitué de 1 et de 0, mais l'​organisation de ces données n'est pas aussi simple. Dans le cœur d'un ordinateur, tout est constitué de 1 et de 0, mais l'​organisation de ces données n'est pas aussi simple.
Ligne 14: Ligne 15:
 Il y a tellement de données sur un disque dur qu'il doit obligatoirement y avoir un moyen de les organiser. Il y a tellement de données sur un disque dur qu'il doit obligatoirement y avoir un moyen de les organiser.
 <​note>​C'​est un peu comme les anciens classeurs de cartes d'​identification de livres dans une bibliothèque municipale, dans lesquels tous les livres sont recensés : sans ces index, il serait impossible de retrouver facilement les livres que nous recherchons. ​ Les bibliothèques utilisent pour la plupart le système de classement décimal Dewey pour organiser les livres en sujets ; il existe aussi d'​autres systèmes de classification arrivant à un résultat similaire, bien qu'​aucun d'​entre eux n'ait atteint la même popularité que le système de Dewey.</​note>​ <​note>​C'​est un peu comme les anciens classeurs de cartes d'​identification de livres dans une bibliothèque municipale, dans lesquels tous les livres sont recensés : sans ces index, il serait impossible de retrouver facilement les livres que nous recherchons. ​ Les bibliothèques utilisent pour la plupart le système de classement décimal Dewey pour organiser les livres en sujets ; il existe aussi d'​autres systèmes de classification arrivant à un résultat similaire, bien qu'​aucun d'​entre eux n'ait atteint la même popularité que le système de Dewey.</​note>​
-Les systèmes de fichiers jouent exactement le même rôle que ces index : organiser les fichiers de votre ordinateur sur votre disque dur de façon à pouvoir les retrouver lorsque vous en aurez besoin. ​ Les systèmes de fichiers les plus répandus à l'​heure actuelle sont sûrement le FAT32 et le NTFS, qui sont les deux seuls systèmes de fichiers que Microsoft(r) Windows(r) peut nativement lire. Mais, tout comme il existe d'​autres systèmes pour classer des livres dans une bibliothèque,​ il existe de nombreux autres systèmes de fichiers : ext2, ext3, ext4, ReiserFS, JFS, XFS, Btrfs, ZFS,​... ​+Les systèmes de fichiers jouent exactement le même rôle que ces index : organiser les fichiers de votre ordinateur sur votre disque dur de façon à pouvoir les retrouver lorsque vous en aurez besoin. ​ Les systèmes de fichiers les plus répandus à l'​heure actuelle sont sûrement le FAT32 et le NTFS, qui sont les deux seuls systèmes de fichiers que Microsoft(r) Windows(r) peut nativement lire. Mais, tout comme il existe d'​autres systèmes pour classer des livres dans une bibliothèque,​ il existe de nombreux autres systèmes de fichiers : ext2, ext3, ext4, ReiserFS, JFS, XFS, Btrfs, ZFS,....
  
 ===== Les qualifications d'un système de fichiers ===== ===== Les qualifications d'un système de fichiers =====
Ligne 37: Ligne 38:
 Parlons maintenant de la journalisation. ​ Un système de fichiers journalisé est **plus fiable** lorsqu'​on entre dans le domaine du stockage des données. ​ Il a été expliqué plus haut ce qui se produit réellement lorsqu'​un fichier est enregistré sur un disque dur (une suite de 1 et de 0 est inscrite sur le disque) ; mais que se produit-il si l'​écriture de la chaîne est interrompue avant son terme (ce qui se produit, par exemple, lors d'une coupure de courant) ?  Votre fichier devient « corrompu », incomplet. Parlons maintenant de la journalisation. ​ Un système de fichiers journalisé est **plus fiable** lorsqu'​on entre dans le domaine du stockage des données. ​ Il a été expliqué plus haut ce qui se produit réellement lorsqu'​un fichier est enregistré sur un disque dur (une suite de 1 et de 0 est inscrite sur le disque) ; mais que se produit-il si l'​écriture de la chaîne est interrompue avant son terme (ce qui se produit, par exemple, lors d'une coupure de courant) ?  Votre fichier devient « corrompu », incomplet.
  
- Un système de fichiers journalisé travaille de façon à prévenir une telle corruption : lors de la sauvegarde d'un fichier, au lieu d'​écrire immédiatement sur le disque dur les données à l'​endroit exact où elles devraient être enregistrées,​ le système de fichiers écrit les données dans une autre partie du disque dur et note les changements ​nécessaire ​dans un journal, et ensuite, en arrière-plan,​ il repasse chacune des entrées du journal et termine le travail commencé ; lorsque la tâche est accomplie, il raye la tâche de la liste.+ Un système de fichiers journalisé travaille de façon à prévenir une telle corruption : lors de la sauvegarde d'un fichier, au lieu d'​écrire immédiatement sur le disque dur les données à l'​endroit exact où elles devraient être enregistrées,​ le système de fichiers écrit les données dans une autre partie du disque dur et note les changements ​nécessaires ​dans un journal, et ensuite, en arrière-plan,​ il repasse chacune des entrées du journal et termine le travail commencé ; lorsque la tâche est accomplie, il raye la tâche de la liste.
  
 Mais comment cela prévient-il la perte de données ?  Prenons un exemple : disons que vous cliquez sur le bouton //​Enregistrer//​ de votre logiciel d'​édition de texte pour sauvegarder le fichier ''​foo.txt''​. ​ L'​ordinateur écrit d'​abord un « brouillon » de ''​foo.txt''​ dans une partie différente du disque dur et écrit le changement dans le journal du système de fichiers. ​ Une fois cela effectué, l'​ordinateur commence à retranscrire le fichier //(la suite de 1 et de 0)// à son endroit définitif sur le disque dur.  Soudain, il survient une panne de courant ; alors la transcription du fichier est interrompue. ​ Lorsque le courant revient, même si le « propre », la version finale de votre fichier est incomplète,​ vous possédez toujours votre brouillon dans le journal du système de fichiers ; l'​ordinateur recommence donc la retranscription du fichier, écrasant les données corrompues. Mais comment cela prévient-il la perte de données ?  Prenons un exemple : disons que vous cliquez sur le bouton //​Enregistrer//​ de votre logiciel d'​édition de texte pour sauvegarder le fichier ''​foo.txt''​. ​ L'​ordinateur écrit d'​abord un « brouillon » de ''​foo.txt''​ dans une partie différente du disque dur et écrit le changement dans le journal du système de fichiers. ​ Une fois cela effectué, l'​ordinateur commence à retranscrire le fichier //(la suite de 1 et de 0)// à son endroit définitif sur le disque dur.  Soudain, il survient une panne de courant ; alors la transcription du fichier est interrompue. ​ Lorsque le courant revient, même si le « propre », la version finale de votre fichier est incomplète,​ vous possédez toujours votre brouillon dans le journal du système de fichiers ; l'​ordinateur recommence donc la retranscription du fichier, écrasant les données corrompues.
Ligne 49: Ligne 50:
  
 La raison est que sur les systèmes de fichiers *nix, les fichiers sont indexés selon un numéro, appelé **inode** ou //i-node//, et que chaque inode possède de nombreux attributs associés à lui, tels **les droits d'​accès,​ l'​horodatage,​ la taille du fichier**, etc. Lorsque vous supprimez un fichier, ce qui se produit réellement est que l'​inode est « délié » du système de fichiers (c'​est-à-dire qu'il n'est plus indexé), mais si des programmes ont un lien avec l'​inode (par exemple, si un document texte est ouvert dans un éditeur de texte, il a un lien avec cet éditeur de texte), le fichier auquel l'​inode est associé continue d'​exister dans le système d'​exploitation et continue d'​être mis à jour. La raison est que sur les systèmes de fichiers *nix, les fichiers sont indexés selon un numéro, appelé **inode** ou //i-node//, et que chaque inode possède de nombreux attributs associés à lui, tels **les droits d'​accès,​ l'​horodatage,​ la taille du fichier**, etc. Lorsque vous supprimez un fichier, ce qui se produit réellement est que l'​inode est « délié » du système de fichiers (c'​est-à-dire qu'il n'est plus indexé), mais si des programmes ont un lien avec l'​inode (par exemple, si un document texte est ouvert dans un éditeur de texte, il a un lien avec cet éditeur de texte), le fichier auquel l'​inode est associé continue d'​exister dans le système d'​exploitation et continue d'​être mis à jour.
 +
 +<​note>​Il est possible de connaître l'​utilisation en inodes d'une partition avec : (**sdxx** : nom de votre partition sda, sdb ...)
 + <​code bash>df -i /​dev/​sdxx</​code>​
 + <​code bash>​sudo tune2fs -l /dev/sdxx | grep -i inode</​code></​note>​
  
 Un fichier n'est réellement effacé que lorsque tous les liens avec son inode ont été coupés //(et encore, les données résident encore sur le disque dur, mais comme elles ne sont plus indexées, il est difficile de les récupérer)//​. Ce que tout ceci signifie est que vous pouvez supprimer des programmes alors qu'ils sont en fonctionnement sans faire planter votre système d'​exploitation,​ renommer ou déplacer des fichiers avant qu'ils aient fini d'​être téléchargés sans les corrompre et supprimer un fichier alors qu'il est encore ouvert dans un logiciel. Un fichier n'est réellement effacé que lorsque tous les liens avec son inode ont été coupés //(et encore, les données résident encore sur le disque dur, mais comme elles ne sont plus indexées, il est difficile de les récupérer)//​. Ce que tout ceci signifie est que vous pouvez supprimer des programmes alors qu'ils sont en fonctionnement sans faire planter votre système d'​exploitation,​ renommer ou déplacer des fichiers avant qu'ils aient fini d'​être téléchargés sans les corrompre et supprimer un fichier alors qu'il est encore ouvert dans un logiciel.
Ligne 88: Ligne 93:
 ==== Systèmes de fichiers exFAT ==== ==== Systèmes de fichiers exFAT ====
 Pour les problèmes liées à ce type de système de fichier voir la page [[:​exfat|dédiée]]. Pour les problèmes liées à ce type de système de fichier voir la page [[:​exfat|dédiée]].
 +
 +==== Systèmes de fichiers ZFS ====
 +**Ce système de fichier est maintenant géré de  façon standard avec la version 20.04.0**
 +
 +Il n'y a pas encore une documentation dédiée. ​  En attendant, ​ voila un avis:    ​
 +En une seule commande on dispose d'un équivalent RAID0 ou RAID1 dans lequel il suffit d'​écrire car le montage se fait dès la création.
 +
 +Préparation: ​ Créer au moins deux partitions de taille identique formatées ou non  sur un disque ou deux disques. ​ Ce n'est pas limité à deux disques!
 +
 +Fabrication en mode sécurisé avec par exemple cette commande:
 +<code bash>​sudo zpool create -f pool-test mirror ​ /dev/sda16 /​dev/​sda17 ​ </​code>​
 +
 +- Il faut laisser l'​option **-f** ​ si les partitions avaient été formatées sinon elle est inutile.
 +
 +- Il faut supprimer l'​option **mirror** si on veut du  non sécurisé.
 +
 +
 +Il ne reste plus qu'à l'​utiliser par exemple:
 +<code bash>​sudo mkdir  /​pool-test/​MyDATA
 +sudo cp -Rv /​DATA/​R*/​* ​ /​pool-test/​MyDATA </​code>​
 +
 +
 +Et suive le taux de remplissage avec la commande standard " **df -h** " ou la commande dédiée.
 +<code bash>​zpool list
 +NAME        SIZE  ALLOC   ​FREE ​ CKPOINT ​ EXPANDSZ ​  ​FRAG ​   CAP  DEDUP    HEALTH ​ ALTROOT
 +pool-test ​   61G  36,8G  24,2G        -         ​- ​    ​0% ​   60%  1.00x    ONLINE ​ -
 +
 +df -h | grep pool
 +pool-test ​          ​60G ​    ​37G ​  ​23G ​ 63% /pool-test </​code>​
 +
 +Si l'​ordinateur s'​arrête,​ il faut remonter le pool avec cette commande
 +<code bash>​sudo zpool import pool-test</​code>​
 +
 + 
 + 
 +Pour plus de détails voir un site anglais: https://​ubuntu.com/​tutorials/​setup-zfs-storage-pool#​1-overview
 +
 +
 +
 +
 +
 +
 +                 
 +                 
 +     
 +   
 + 
 +
  
 ===== Quelques commandes utiles ===== ===== Quelques commandes utiles =====
Ligne 109: Ligne 162:
   * [[http://​plfnicolarius.free.fr/​tutoriel_logiciel_linux_verifier_systeme_de_fichiers.php|Vérifier son système de fichiers sous Linux]]   * [[http://​plfnicolarius.free.fr/​tutoriel_logiciel_linux_verifier_systeme_de_fichiers.php|Vérifier son système de fichiers sous Linux]]
   * [[http://​www.opendedup.org/​|OpenDedup]] (SDFS) : système de fichier supportant la déduplication.   * [[http://​www.opendedup.org/​|OpenDedup]] (SDFS) : système de fichier supportant la déduplication.
 +  * [[:​chemins|Les chemins d'​accès sous Linux]]
  
 ------ ------
 //​Contributeurs:​ [[utilisateurs:​AlexandreP]],​[[utilisateurs:​fnx]] \\ //​Contributeurs:​ [[utilisateurs:​AlexandreP]],​[[utilisateurs:​fnx]] \\
 Basé sur [[https://​wiki.ubuntu.com/​LinuxFilesystemsExplained|Linux Filesystems Explained]]//​ Basé sur [[https://​wiki.ubuntu.com/​LinuxFilesystemsExplained|Linux Filesystems Explained]]//​
  • systeme_de_fichiers.txt
  • Dernière modification: Le 11/09/2022, 11:25
  • par moths-art