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
ext4 [Le 05/11/2009, 18:10]
psychederic
ext4 [Le 02/10/2023, 12:22] (Version actuelle)
90.82.195.233 [Le système de fichiers ext4]
Ligne 1: Ligne 1:
-{{tag>systeme_de_fichiers}}+{{tag>système partitions}}
 ---- ----
 ====== Le système de fichiers ext4 ====== ====== Le système de fichiers ext4 ======
  
-Ext4 est une évolution du système de fichier ext3, qui est actuellement le système de fichier le plus utilisé sous Linux. Il présente de nombreux avantages et optimisations par rapport à l'​ancienne version, tout en assurant une rétro-compatibilité. Ext4 vient d'​être déclaré "stable", il sera possible de l'​utiliser dans la 9.04 et est le système de fichier par défaut sous 9.10 . +Ext4 est une évolution du système de fichier ext3, qui est actuellement le système de fichier le plus utilisé sous Linux. Il présente de nombreux avantages et optimisations par rapport à l'​ancienne version, tout en assurant une rétro-compatibilité. Ext4 est stable et est le système de fichier par défaut sous 9.10
 + 
 +Cette page vous permettra de passer vos systèmes de fichiers ext2 ou ext3 en ext4 sans avoir à réinstaller ni copier vos fichier autre part.
  
 Voir [[benchmark#​systeme_de_fichier_ext_contre_les_autres|le benchmark des systèmes de fichier ext]]. Voir [[benchmark#​systeme_de_fichier_ext_contre_les_autres|le benchmark des systèmes de fichier ext]].
  
-<note help> +Outre le fait qu'il puisse gérer les volumes d'une taille allant jusqu'​à un exbioctet (2<sup>60</​sup>​ octets), la fonctionnalité majeure ​de ext4 est l'allocation par extent qui permettent la pré-allocation d'une zone contiguë pour un fichierpour minimiser la fragmentation. L'​option extent est active par défaut depuis le noyau Linux 2.6.23 ; avant cela, elle devait être explicitement indiquée lors du montage de la partition. 
-Si vous souhaitez tout de même l'utiliser sur une version plus ancienneil vous faudra [[kernel_2.6.29|installer un autre kernel manuellement]] ou [[tutoriel/​comment_compiler_un_kernel_de_kernel.org|compiler votre noyau vous même !]] (déconseillé ​pour l'utilisateur lambda) +Le système de fichiers ext4 a une compatibilité ascendante avec ext3. C'​est-à-dire qu'une partition ext3 peut toujours être montée comme ext4 (en utilisant le type de système de fichiers « ext4 » lors du montage). L'​inverse est possible, à la condition que la partition ext4 n'ait jamais utilisé l'​allocation par extents ​pour enregistrer des fichiers, mais l'allocation binaire comprise par ext3. Cette capacité de ext4 d'​utiliser les formats de ext3 existe pour faciliter la conversion des partitions ext3 vers ext4.
-</​note>​ +
 ===== Nouveautés ===== ===== Nouveautés =====
  
   * Ext4 a une option : **extents** qui permet de limiter grandement et automatiquement la fragmentation du système de fichiers.   * Ext4 a une option : **extents** qui permet de limiter grandement et automatiquement la fragmentation du système de fichiers.
-  * Ext4 défragmente les fichiers en arrière-plan en utilisant les ressources disponibles. 
   * Ext4 est nativement présent depuis la distribution Fedora 9 et son utilisation est considérée comme stable depuis la version 2.6.28 du noyau Linux.   * Ext4 est nativement présent depuis la distribution Fedora 9 et son utilisation est considérée comme stable depuis la version 2.6.28 du noyau Linux.
-  * Ext4 présente des performances en hausse par rapport à Ext3, ReiserFS 3 et XFS comme en témoigne ce bench de Phoronix ​[[http://​www.phoronix.com/​scan.php?​page=article&​item=ext4_benchmarks&​num=1 +  * Ext4 présente des performances en hausse par rapport à Ext3, ReiserFS 3 et XFS comme en témoigne ce  [[https://​www.phoronix.com/​scan.php?​page=article&​item=ext4_benchmarks&​num=1|bench de Phoronix]] 
-]]+  * Ext4 peut se transformer en système de fichier non journalisé comme Ext2.
  
 ===== Prérequis pour migrer vers l'ext4 ===== ===== Prérequis pour migrer vers l'ext4 =====
  
-  ​* Avoir le support de l'ext4 dans le noyau (Ubuntu Jaunty ou noyau compilé à la main) +  * **Avoir fait une sauvegarde!** ​(C'est préférable)
-  * e2fsprogs 1.41.x (Ubuntu Intrepid) +
-  * Grub2 SVN au moins daté du 13 Juillet 2008 (à moins que votre /boot ne soit en ext3) ou le grub de Ubuntu Jaunty +
-  ​* **Avoir fait une sauvegarde!**+
   * Avoir déjà une partition ext3 avec une taille d'​inodes de 256 octets (pour vérifier utilisez la commande **sudo tune2fs -l /​dev/​sda1|grep "Inode size"​** ) (pensez à remplacer sda1 par la partition ext3 correspondante le cas échéant, dans la commande précédente)   * Avoir déjà une partition ext3 avec une taille d'​inodes de 256 octets (pour vérifier utilisez la commande **sudo tune2fs -l /​dev/​sda1|grep "Inode size"​** ) (pensez à remplacer sda1 par la partition ext3 correspondante le cas échéant, dans la commande précédente)
  
-//Dans mon cas, mon disk de données (/​mount/​disk/​) avait des inodes de 128 octets, la conversion en ext4 avec la commande ci-dessous n'a pas posé de problème.//​ +//Dans mon cas, mon disque ​de données (/​mount/​disk/​) avait des inodes de 128 octets, la conversion en ext4 avec la commande ci-dessous n'a pas posé de problème.//​ 
-Mais => +//Mais d'​après [[https://​ext4.wiki.kernel.org/​articles/​c/​o/​n/​Considerations_when_creating_ext3_filesystems.html|le wiki ext4]] [en], il faut une taille d'​inode de 256 octets minimum pour stocker les attributs liés certaines fonctionnalités avancées de l'​ext4.//​
- +
-http://​ext4.wiki.kernel.org/​index.php/​Considerations_when_creating_ext3_filesystems#Inode_Size+
  
  
 ===== Convertir une partition ext3 en ext4 ===== ===== Convertir une partition ext3 en ext4 =====
  
-Si vous avez tout ceci de prêt, vous pouvez lancer un LiveCD style Ubuntu, PartedMagic ou démarrer en recovery mode et choisir l'​option shell root sans réseau. Ensuite tapez la commande:+Si vous avez tout ceci de prêt, vous devez commencer par [[:tutoriel:​comment_modifier_un_fichier|modifiez le fichier]] **/​etc/​fstab**
  
-<​code>#​ tune2fs -O extents,​uninit_bg,​dir_index /dev/sda1 +remplacez dans ce fichier **ext2** et **ext3** par **ext4** à chaque fois que vous le voyez.
-# fsck -pf /​dev/​sda1</​code>​+
  
-En remplaçant **/​dev/​sda1** par votre partition ext3N'​oubliez pas de modifier le fichier **/​etc/​fstab** et de changer **ext3** par **ext4**. Notez que vous pouvez tout à fait le faire avant de convertir ​votre partition, le pilote **ext4** est compatible avec l'​ext3. +<note important>​Il est nécessaire d'​ajouter un journal à vos partitions ext2 (i.emigration ​ext3avant de pouvoir les convertir ​en ext4 :<​code>​sudo tune2fs ​-j "​Partition à convertir"<​/code></note>
-N'​oubliez pas de faire des sauvegardes! On ne vous le répétera jamais assez! +
-Une fois la partition root "/"​ convertie **réinstaller grub** ​: +
-<​code>​# grub-install ​/dev/sda</code>+
  
 +redémarrez ensuite votre système et ouvrez un [[terminal]] et tapez ce qui suit ( il faut mettre "​sudo"​ en tête, sinon le résultat de la commande sous Ubuntu 12.04 retourne "​tune2fs:​ Permission non accordée lors de la tentative d'​ouverture de "​Partition à convertir"​. Impossible de trouver un superbloc de système de fichiers valide."​) :
  
-<note warning>​Pour les **ordinateurs tatoués** et/ou qui s'[[http://​doc.ubuntu-fr.org/​tutoriel/​comment_amorcer_ubuntu_avec_ntldr|amorcent en utilisant le ntldr]] :+<​code>​sudo tune2fs -O extent,​uninit_bg,​dir_index "​Partition à convertir"</​code>​ 
 + 
 +**"​Partition à convertir"​** étant le nom de la partition dans **/​etc/​fstab** que vous voulez convertir. (par exemple /dev/sda1 ou /​dev/​sdb2) 
 + 
 +Puis redémarrez à nouveau ou lancez manuellement une vérification de la partition : 
 +<​code>​sudo fsck.ext4 -fDC0 "​Partition à convertir"</​code>​ 
 + 
 +Si vous convertissez la partition root "/"​ il faudra ensuite **réinstaller grub**. \\ 
 +Vérifiez d'​abord si le paquet **grub2** est bien [[:​tutoriel:​comment_installer_un_paquet|installé]]. \\ 
 +Puis ouvrez un [[terminal]] et tapez: 
 + 
 +<​code>​grub-install /​dev/​sda</​code>​ 
 +  sudo update-grub 
 + 
 +<note warning>​Pour les **ordinateurs tatoués** et/ou qui s'​[[:​tutoriel:​comment_amorcer_ubuntu_avec_bootmgr|amorcent en utilisant le ntldr]] :
  
 Réinstaller le grub sur la partition où a été installé Ubuntu (par exemple, /dev/sda2), sinon, vous risquez de perdre le mbr. Réinstaller le grub sur la partition où a été installé Ubuntu (par exemple, /dev/sda2), sinon, vous risquez de perdre le mbr.
  
 Ne pas oublier de **recopier** le fichier d'​amorce dans la partition windows avant de faire le reboot : Ne pas oublier de **recopier** le fichier d'​amorce dans la partition windows avant de faire le reboot :
-<​code>​sudo dd if=/​dev/​sdxY of=~/​grub.bs bs=512 count=1</​code>​+<​code>​sudo dd if=/​dev/​sdxY of=~/​grub.bs bs=512 count=1</​code>​
 où sdxY est la partition sur laquelle est installé Ubuntu. où sdxY est la partition sur laquelle est installé Ubuntu.
-<​code>​mkdir /​media/​windows +<​code>​mkdir /​media/​windows 
-mount -t ntfs-3g /dev/sdwZ /​media/​windows</​code>​+mount -t ntfs-3g /dev/sdwZ /​media/​windows</​code>​
 où sdwZ est la partition sur laquelle est installée Windows. où sdwZ est la partition sur laquelle est installée Windows.
-<​code>​cp /​media/​windows/​grub.bs /​media/​windows/​grub.bs.bak +<​code>​cp /​media/​windows/​grub.bs /​media/​windows/​grub.bs.bak 
-cp ~/grub.bs /​media/​windows/​grub.bs +cp ~/grub.bs /​media/​windows/​grub.bs 
-umount /​dev/​sdwZ</​code>​+umount /​dev/​sdwZ</​code>​
 </​note>​ </​note>​
  
 ====  Grub Error 13 / Grub Error 24  ==== ====  Grub Error 13 / Grub Error 24  ====
- 
- 
  
 Si lors d'un futur redémarrage une de ces erreurs apparaît : Si lors d'un futur redémarrage une de ces erreurs apparaît :
Ligne 73: Ligne 76:
 <​code>​Error 24: Cannot boot without kernel loaded</​code>​ <​code>​Error 24: Cannot boot without kernel loaded</​code>​
  
-Cela signifie que vous n'avez pas réinstallé grub après une conversion, ou que vous avez installé grub depuis une installation d'​Intrepid qui a été ensuite mise à jour vers JauntyDans les deux cas, grub ne reconnaît pas votre partition ext4. Redémarrez avec un Live CD de Jaunty et entrez ces commandes :+Cela signifie que vous n'avez pas réinstallé grub après une conversion. ​Grub ne reconnaît pas votre partition ext4. Redémarrez avec un Live CD de Jaunty et entrez ces commandes :
  
-<​code>​mkdir /​media/​ubuntu +<​code>​mkdir /​media/​ubuntu 
-mount -t ext4 /dev/sda1 /​media/​ubuntu +mount -t ext4 /dev/sda1 /​media/​ubuntu 
-mount -t proc proc /​media/​ubuntu/​proc +mount -t proc proc /​media/​ubuntu/​proc 
-mount -t sysfs sys /​media/​ubuntu/​sys +mount -t sysfs sys /​media/​ubuntu/​sys 
-mount -o bind /dev /​media/​ubuntu/​dev +mount -o bind /dev /​media/​ubuntu/​dev 
-chroot /​media/​ubuntu +chroot /​media/​ubuntu 
-grub-install /dev/sda+grub-install /dev/sda
 </​code>​ </​code>​
  
  
-<note tip>faire aussi si vous avez des messages d'​erreur lors de l'​installation du grub.</​note>​+<note tip>À faire aussi si vous avez des messages d'​erreur lors de l'​installation du grub.</​note>​ 
 + 
 +===== Accessibilité depuis Windows ===== 
 + 
 +([[tutoriel::​comment_acceder_a_ses_partitions_d_ubuntu_sous_windows|Comment accéder à ses partitions d'​Ubuntu sous Windows]])
  
-<note tip>​Utilisez bien un Live CD de Jaunty, les versions de grub livrées avec les distributions antérieures ne gèrent pas l'​ext4.</​note>​ +===== Désactiver la journalisation ​=====
-===== Jaunty et problèmes ​=====+
  
-<note warning>​A noter qu'il subsiste encore des bugs concernant **ext4 dans ubuntu 9.04 - Jaunty avec le kernel 2.6.28**, un connaisseur de 'linux' s'en sortiramais pour l'instant il est déconseillé ​pour un 'user basic' de passer d'ext3 à ext4 avec les bugs mentionnés. Il est possible [[kernel_2.6.29|de passer au kernel 2.6.29 (suivre l'​aide)]].( Bug : 2.6.28 Voir la [[http://www.ubuntu.com/getubuntu/releasenotes/​904#​Other%20known%20issues|Liste des bugs de Jaunty]], dont le [[https://​bugs.launchpad.net/​ubuntu/​+source/​linux/​+bug/​330824|freeze de l'​interface quand suppression de plusieurs fichiers]] dans des conditions spécifiques )</note>+Pour désactiver ​le journal d'Ext4 vous devez installer Ubuntu sur une partition Ext4 journalisée normalpuis une fois l'installation terminée redémarrez sur le LiveCD ​pour ouvrir ​un terminal et tapez : 
 +<​code>​sudo tune2fs -O^has_journal ​/dev/sda1 
 +sudo e2fsck -f -v -C0 /dev/sda1</code> 
 +en remplaçant sda1 par votre partition.
  
 +Il est également possible d'​uniquement désactiver la mise à jour de la journalisation en modifiant la configuration de la fstab (FileSystemTable) en ajoutant des options aux partitions souhaitées :
 +[[https://​lea-linux.org/​documentations/​Fstab|Fstab sur léa-Linux]]
 +===== Récupérer de l'​espace disque =====
 +Par défaut une partition ext4 va se réserver 5% d'​espace pour root afin d'​éviter que le système ne "​meure"​ parce qu'un utilisateur a consommé toute la place. Si votre disque est petit cela ne comporte guère d’inconvénient,​ mais si vous avez une partition de plusieurs To, la perte de place est tout de même importante.\\
 +[[partitions#​remedier_a_l_erreur_indiquant_qu_il_n_y_a_plus_assez_d_espace_sur_le_disque|Récupérer de l'​espace disque]]
  
 ===== Liens ===== ===== Liens =====
  
-  * La page officielle du projet ext4: [[http://​ext4.wiki.kernel.org/​index.php/​Main_Page]] +  * La [[https://​ext4.wiki.kernel.org/​index.php/​Main_Page|page officielle]] du projet ext4: 
-  * Page wikipedia: [[wpfr>​ext4]]+  * Page Wikipédia: [[wpfr>​ext4]] 
 +  ​
  
 ---- ----
-//​Contributeurs:​ [[utilisateurs:​Fabien26]] [[utilisateurs:​Nicolarius]].//​+//​Contributeurs:​ [[utilisateurs:​Fabien26]] [[utilisateurs:​Nicolarius]] [[utilisateurs:​Vincent85]].//
  • ext4.1257441000.txt.gz
  • Dernière modification: Le 18/04/2011, 14:56
  • (modification externe)