Comment défragmenter un disque dur sous Linux



Nombreuses sont les idées reçues concernant les systèmes de fichiers et les systèmes d’exploitation. L’une des plus tenaces est celle qui voudrait que seule la fragmentation affecte les disques durs Windows utilisant le système de fichiers NTFS. C’est une erreur. La fragmentation n’est pas une spécificité de Microsoft. En réalité, elle peut toucher la majorité des systèmes de fichiers, à moins qu’ils n’aient été conçus spécifiquement pour l’éviter, ce qui est plutôt rare. Les utilisateurs de Linux ne sont donc pas à l’abri. Bien souvent, des sites web popularisent l’idée que Linux serait « immunisé » contre ce phénomène. C’est en partie vrai, les systèmes de fichiers Linux se fragmentent moins rapidement que NTFS, mais ils ne sont pas invulnérables. Cet article vous expliquera comment agir lorsque votre PC Linux atteint un niveau critique de fragmentation et comment défragmenter votre disque dur sous Linux.

Créer un disque live Linux

Contrairement à Windows, les systèmes de fichiers Linux ne doivent pas être défragmentés lorsqu’ils sont en cours d’utilisation. Par conséquent, si vous souhaitez défragmenter un disque dur sous Linux, et en particulier celui qui héberge votre installation Linux, un disque live est préférable. N’importe quel ancien Linux fera l’affaire (à condition d’avoir un accès au terminal root). Pour ce guide, nous vous recommandons d’utiliser un disque live Arch Linux.

Arch est un choix judicieux car il démarre directement dans un shell root, ce qui en fait le système idéal pour les opérations de maintenance. Pour créer votre disque live, téléchargez le dernier fichier ISO depuis le site officiel d’Arch, et procurez-vous l’outil de gravure USB ISO Etcher. La création du disque live est simple et l’outil Etcher vous guidera tout au long du processus.

Préparer votre système

Il est possible de défragmenter sans suivre cette étape, mais c’est déconseillé. Les choses peuvent mal tourner, voire échouer, en présence de blocs défectueux sur l’une des partitions.

Dans l’invite Arch Linux, tapez lsblk. Cette commande affiche tous les périphériques de stockage (lecteurs de données, etc.) connectés à l’ordinateur. En vous basant sur la liste affichée par lsblk, identifiez les disques durs (et partitions) sur lesquels vous souhaitez effectuer une défragmentation, et prenez note de leurs étiquettes.

Ensuite, dans le shell Arch, saisissez:

fsck /dev/sdXY -y

Note : Remplacez X et Y par l’étiquette de votre disque dur (telle qu’affichée par lsblk).

L’outil fsck analysera la partition du disque dur à la recherche de blocs défectueux, de blocs corrompus et de données inutiles. Il nettoiera tout sur la partition, afin que la défragmentation puisse se dérouler correctement.

Le processus de nettoyage peut prendre un certain temps, en fonction du nombre de blocs défectueux sur la partition sur laquelle la commande fsck est exécutée. Pas d’inquiétude, ce processus est entièrement automatisé. Vous n’avez rien à faire, grâce à l’option -y qui répondra automatiquement oui à toutes les questions posées par le programme.

Détecter la fragmentation

Pour évaluer le niveau de fragmentation, nous allons utiliser fsck une nouvelle fois, cette fois avec l’option -fn:

fcsk -fn /dev/sdXY

L’option -fn indique à fsck d’effectuer une vérification rapide du système de fichiers. Il détermine si le système est « contigu » (c’est-à-dire fragmenté). Plus le nombre est bas, mieux c’est. Il est recommandé de ne lancer une défragmentation que si votre système de fichiers est fragmenté à plus de 15 %.

Défragmentation

Arch Linux est livré avec un outil de défragmentation puissant, prêt à l’emploi, sans qu’il soit nécessaire d’installer quoi que ce soit. Cet outil s’appelle e4defrag. Il est léger, mais puissant. Lancez-le sur n’importe quelle partition Linux, et il analysera et défragmentera le disque dur facilement. Pour l’utiliser, retrouvez le nom de la partition que vous voulez nettoyer avec la commande lsblk.

mount /dev/sdXY /mnt

Ensuite, démarrez la défragmentation :

e4defrag /dev/sdXY

Note : Bien que ce tutoriel conseille de ne pas lancer e4defrag sans utiliser un disque live, cela ne signifie pas qu’il est impossible de le faire sur un système en cours d’exécution. Nous le déconseillons car il est impossible de réparer et de nettoyer les blocs défectueux lorsque le disque dur est utilisé par Linux. Cela handicape le processus menant à la défragmentation.

Si vous souhaitez ignorer le nettoyage du disque (blocs défectueux et données inutiles) avant d’utiliser e4defrag, il est possible d’effectuer cette opération sur n’importe quelle distribution Linux. La plupart des distributions Linux fournissent l’outil e4defrag par défaut.

Si, pour une raison quelconque, e4defrag n’est pas présent sur votre PC Linux, il est très facile à trouver. Recherchez simplement « e4defrag » dans le gestionnaire de paquets que vous utilisez habituellement pour installer les logiciels et installez-le.

Conclusion

La fragmentation est une réalité informatique. Les systèmes de fichiers se saturent avec le temps. S’il est vrai que sous Linux, ce problème n’est vraiment important que lorsqu’un disque est presque plein, il demeure une réalité. C’est pourquoi il est important de combattre l’idée reçue selon laquelle « Linux ne nécessite pas de défragmentation ». Avec l’aide de ce tutoriel, nous espérons que vous réaliserez qu’il est de votre ressort de maintenir votre disque dur Linux en parfait état !