Comment défragmenter Linux ?

Il y a une idée reçue très répandue parmi les utilisateurs Linux que le système n'a pas besoin d'être défragmenté.
Cette situation découle de la réussite des systèmes de fichiers utilisés par la plupart des distributions, EXT2,3 et 4, JFS, XFS, ZFS, ReiserFS et BTRFS.
Tous ce vante de gérer de façons intelligentes et techniques l'allocation des fichiers dans les disques en minimisant le problème de fragmentation et disent qu'il n'y a pratiquement aucune raison de défragmenter même après de nombreuses années d'installation et désinstallation d'applications dans le même système.
La fragmentation peut être un problème pour les utilisateurs qui utilisent tous l'espace disques et qui ne peuvent pas offrir de nombreuses options d'allocation des fichiers.

Voici une description de la façon dont procède Linux pour l'allocation de fichier : les fichiers sont stockés à plusieurs endroits dans le disque, laissant d'immense espace entre les fichiers leur permettant de grandir.

Si, le disque devient plus encombré, un fichier qui a besoin de plus d'espace pour grandir, le système de fichiers Linux tentera de réécrire complètement le fichier sur un autre secteur qui a suffisamment d'espace pour le stocker. De cette façon, tout est propre, bien rangé et en un seul morceau.

Cependant, les PCs avec des espaces confiné peuvent avoir quelques difficultés avec le temps.
Voici comment faire face à ce problème et comment effectivement défragmenter votre système Linux.

Maintenant, la première chose que vous devez faire est d'obtenir un outil de défragmentation.
Il y a beaucoup de défragmenteurs disponibles pour les systèmes de fichiers de Linux, mais je vais utiliser “e4defrag”, comme il est très probablement déjà installé sur votre système.

Grâce à cet outil, vous pouvez déterminer si vous avez des fichiers fragmentés et la gravité de la fragmentation.

Pour ce faire, ouvrez un terminal en root et tapez:

e4defrag -c / #emplacement ou /dev/device

Ci-dessous, j'ai scanné mon répertoire /home pour les fichiers fragmentés et j'ai effectivement trouvé cinq fichiers.

e4defrag -c /home/
<Fragmented files> now/best size/ext
1. /home/USER/.local/share/zeitgeist/activity.sqlite
8/1 6 KB
2. /home/USER/.icedove/gs0gd8wu.default/panacea.dat
10/1 6 KB
3. /home/USER/.icedove/gs0gd8wu.default/ImapMail/xxxxxxx/register no-ip
2/1 4 KB
4. /home/USER/.icedove/gs0gd8wu.default/ImapMail/xxxxxx/xxxxxx.msf
2/1 4 KB
5. /home/USER/.icedove/gs0gd8wu.default/ImapMail/xxxxx/xxxxxx.msf
2/1 4 KB
Total/best extents 837/428
Average size per extent 1787 KB
Fragmentation score 1
[0-30 no problem: 31-55 a little bit fragmented: 56- needs defrag]
This directory (/home/) does not need defragmentation.
Done.

Mon score de fragmentation est cependant assez faible donc la défragmentation ne fera pas beaucoup de différence sur les performances de mon système dans ce cas.

Dans un premier temps, je vais montrer comment défragmenter en utilisant e4defrag, par la défragmentation de fichier, un par un. Le programme de e4defrag fait partie du paquet e2fsprogs qui devrait déjà être installé sur votre PC.

J'utilise la commande suivante:

e4defrag /file/a/défragmenté

Si vous souhaitez défragmenter votre système entier, alors vous devriez d'abord démonter toutes les partitions, exécutez la commande suivante:

e4defrag /dev/*

Si vous souhaitez effectuer la défragmentation sans démonter:

e4defrag /

Si vous possédez un SSD, il est tout simplement inutile de se soucier des fichiers fragmentés ces disques peuvent accéder à leur stockage au hasard. Défragmenter votre SSD ne fera qu'augmenter la lecture/écriture sur le SSD, donc de réduire la durée de vie de votre disque.

source: howtoforge.com