17/11/2024

Commandes et Système

ncdu : un outil interactif pour voir la taille des dossiers sous Linux

I. Présentation

Sous Linux, en ligne de commande, comment visualiser facilement l'espace disque utilisé par les dossiers et les fichiers ? La réponse avec l'outil "ncdu" !

L'outil ncdu dont le signifie "NCurses Disk Usage" est une alternative plus moderne et interactive à la commande "du" intégrée au système Linux. À partir de la console, c'est-à-dire d'un simple Terminal, nous allons pouvoir utiliser ncdu pour visualiser l'utilisation du disque. L'objectif est de faciliter l'analyse de la taille des fichiers et des dossiers grâce à une interface graphique en mode console.

Nous verrons comment l'installer sur Debian ou Ubuntu et comment l'utiliser au travers plusieurs exemples afin que vous puissiez le prendre en main. Vous verrez qu'il est très utile pour identifier facilement les répertoires et les fichiers volumineux.

Prêt à découvrir ncdu ? Lisez la suite de ce tutoriel !

II. Installation de ncdu sur Linux

D'abord, nous devons installer ncdu sur notre système, en l'occurrence ici, sur une machine Ubuntu pour ma part. Ce paquet est également disponible pour Fedora et d'autres distributions, ainsi que sur macOS.

Pour installer ncdu sur Debian ou Ubuntu, ouvrez votre terminal et exécutez les commandes suivantes :

sudo apt-get update
sudo apt-get install ncdu

Si vous utilisez Fedora, la commande suivante installera ncdu :

sudo dnf install ncdu

Désormais, le paquet ncdu a été installé sur notre machine ! Nous pouvons commencer à explorer son utilisation au travers de différents exemples.

III. Utilisation de ncdu

Pour utiliser ncdu, il suffit d'appeler la commande par son nom et de préciser le chemin du répertoire que vous souhaitez analyser. Si nous ne précisons pas de chemin, le répertoire courant, vis-à-vis du shell, sera analysé.

Donc, voici comment analyser le répertoire "/home/flo" avec ncdu. L'outil va analyser l'intégralité de l'arborescence de fichiers et de dossiers.

ncdu /home/flo

De ce fait, ncdu commencera par analyser le répertoire spécifié, puis affichera une "interface graphique" en mode console où l'ensemble des répertoires de premier niveau seront triés par taille. Le répertoire le plus volumineux sera donc positionné en premier. Voici un aperçu :

Analyser espace disque Linux avec ncdu

L'image ci-dessus montre que le répertoire le plus volumineux dans "/home/flo" est le répertoire "Téléchargements". Il représente une taille totale de 629,7 Mo. Mais, que contient-il ? Inutile de relancer une analyse de ncdu sur ce sous-répertoire. En effet, vous pouvez naviguer dans cette interface en utilisant les flèches du clavier, notamment les flèches de gauche et de droite pour rentrer dans un répertoire ou revenir en arrière.

Remarque : il n'est pas possible de remonter dans un répertoire "plus haut" que celui spécifié comme base pour l'analyse.

Finalement, nous pouvons voir que ce répertoire contient seulement 2 fichiers, dont une image ISO. Là encore, ncdu effectue un tri par taille très utile.

Ubuntu - Exemple ncdu

Nous pouvons identifier facilement les éléments les plus volumineux, mais ncdu intègre d'autres options pour effectuer le classement des informations. Par exemple, le fait d'appuyer sur "n" permet de faire un tri par nom, tandis que la touche "C" sera utile pour effectuer un tri sur le nombre d'éléments (l'information s'affichera d'ailleurs à ce moment-là).

De plus, l'option "d" peut être utilisée pour supprimer un répertoire ou un fichier ! Ainsi, nous pouvons effectuer du nettoyage sur la machine tout au long de l'analyse.

Aide commande ncdu

À tout moment, quittez l'analyse en appuyant sur la touche "q" du clavier.

IV. Fonctionnalités avancées de ncdu

L'outil ncdu intègre plusieurs options utiles pour personnaliser l'analyse du disque. Voici trois exemples utiles lors de l'utilisation de ncdu.

A. ncdu : exclusion de fichiers ou dossiers

Pour exclure un certain type de fichier (selon une extension, par exemple) ou un dossier spécifique du scan, utilisez l'option "--exclude" de ncdu. Par exemple, pour exclure toutes les images ISO (fichier ".iso"), nous pouvons exécuter :

ncdu --exclude "*.iso" /home/flo

Nous pourrions faire la même chose pour exclure de l'analyse les fichiers temporaires :

ncdu --exclude "*.tmp" /home/flo

Pour aller plus loin, l'option "-X" ou "--exclude-from" permet de spécifier un nom de fichiers qui contient des patterns à exclure.

B. ncdu : effectuer une analyse en lecture seule

Comme nous l'avons vu, ncdu est capable de supprimer des fichiers et des dossiers. Si vous avez peur d'effectuer une suppression accidentelle, sachez que vous pouvez lancer l'outil en mode lecture seule via l'option "-r".

Par exemple :

ncdu -r /home/flo

Donc, si vous cherchez à supprimer un fichier, ncdu vous indiquera que la fonctionnalité de suppression est désactivée.

C. ncdu : sauvegarder les résultats du scan

Il est parfois utile de sauvegarder les résultats du scan de ncdu pour une analyse ultérieure. Pour cela, nous pouvons utiliser l'option "-o" suivie d'un nom de fichier de sortie. Ainsi, l'outil ncdu va exporter les résultats dans un fichier. Par la suite, nous devrons utiliser l'option "-f" pour importer le fichier de résultat dans ncdu.

Par exemple :

ncdu -o scan.ncdu /home/flo
# Pour ouvrir ncdu à partir d'un fichier de résultats :
ncdu -f scan.ncdu

V. Conclusion

Si vous recherchez un outil en ligne de commande pour analyser l'espace disque de votre machine Linux, ncdu devrait vous plaire !

À la fois facile à utiliser et très efficace, c'est un outil intéressant pour analyser l'espace disque sans utiliser les commandes habituelles. Sa fonction de suppression permettra aussi de supprimer les éléments indésirables au fur et à mesure. Enfin, sachez que l'aide officielle est disponible sur cette page.


author avatar
Florian BURNEL Co-founder of IT-Connect
Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.