Les systèmes de fichiers ext4 doivent-ils être défragmentés?

43

Les ext4systèmes de fichiers doivent-ils être défragmentés? Si oui, comment puis -je les défragmenter?

Si non, pourriez-vous poster une explication simple de la raison pour laquelle ils n'ont pas besoin d'être défragmentés?

BenjiWiebe
la source
4
Si vous êtes aussi intéressé que vous le souhaitez, cet article pourrait peut-être vous intéresser: Projet Fedora , à partir de la page 179 (page 3)
nerdwaller
@nerdwaller Intéressant, mais un peu trop en profondeur pour que je puisse bien le comprendre.
BenjiWiebe
1
Question connexe sur Demandez à Ubuntu: Pourquoi la défragmentation n'est-elle pas nécessaire? , où la réponse acceptée est actuellement:The underlying filesystems used by Ubuntu, like ext2 and ext3, simply don't need defragmenting because they don't fragment files in the same way as NTFS. There are more details athttp://en.wikipedia.org/wiki/Ext3#Defragmentation.
Percée du

Réponses:

30

Les ext4systèmes de fichiers doivent-ils être défragmentés?

Oui (mais très rarement).

Si oui, comment puis-je les défragmenter?

Copiez tous les fichiers de la partition, supprimez-les de la partition, puis copiez-les à nouveau sur la partition. Le système de fichiers allouera intelligemment les fichiers lorsque vous les recopiez sur le disque.

Si non, pourriez-vous poster une explication simple de la raison pour laquelle ils n'ont pas besoin d'être défragmentés?

ext4agit de manière plus intelligente que simplement ajouter de nouveaux fichiers dans le prochain espace disponible. Au lieu de placer plusieurs fichiers les uns à côté des autres sur le disque dur, les systèmes de fichiers Linux dispersent différents fichiers sur le disque, laissant ainsi une grande quantité d'espace libre entre eux. Lorsqu'un fichier est modifié et qu'il doit être agrandi, il lui reste généralement beaucoup d'espace libre. Si une fragmentation se produit, le système de fichiers tentera de déplacer les fichiers afin de réduire la fragmentation en utilisation normale, sans recourir à un utilitaire de défragmentation.

Grâce à un commentaire de @Green Reaper, mon attention a été attirée sur e4defrag .

nuts
la source
Donc, il n'y a pas de logiciel de défragmentation à la demande?
BenjiWiebe
9
Un lien vers la source que vous avez copiée
Christophe L
4
L’outil appelé e4defrag peut être utilisé pour défragmenter ext4. Il est fourni par e2fsprogs sur la plupart des distributions. ext4 tente également d'éviter la fragmentation , mais cela ne réussit pas toujours.
GreenReaper
Existe-t-il un moyen de visualiser le pourcentage de fichiers fragmentés?
Aaron Franke
Sachez que e4defrag ne défragmente que les fichiers, pas l'espace disponible. Si votre espace disponible est fragmenté, e4defrag ne fonctionnera pas correctement car il n’existe aucun espace contigu pour déplacer des fichiers.
Jlh
19

J'utilise la partition ext4 depuis plus d'un an. Je manquais souvent d’espace, je déplaçais beaucoup de fichiers, etc, etc., ces choses sont mauvaises pour la fragmentation et hier, j’ai vérifié la fragmentation pour la première fois et seulement 2 fichiers (pas%, seulement deux fichiers) ont été fragmentés. .

Sur la partition Windows qui a été utilisée pendant environ un an de plus avec beaucoup plus d'espace libre, j'ai une fragmentation de 95%.

Donc non, vous n'avez vraiment pas besoin de défragmenter ext4 et si vous voulez en être sûr, laissez de l'espace libre par défaut pour ext4 (la valeur par défaut est 5%, vous pouvez la modifier par ex2tunefs -m X).

zahjin
la source
1
Comment vérifiez-vous la fragmentation?
Sparhawk
13
Si vous avez un système de fichiers ext4 créé avec l' extentoption (c'est la valeur par défaut dans les distributions les plus récentes), vous pouvez vérifier la fragmentation dessus e4defrag -c /path/to/checket la défragmenter sans démonter e4defrag /path/to/check. Mais si vous avez assez d'espace libre, vous n'aurez pas besoin de le faire.
Gerlos