Présentation
Parfois, il est nécessaire de savoir quels fichiers ou répertoires consomment tout votre espace disque. De plus, il peut être nécessaire de le trouver à l'emplacement du répertoire particulier sur le système de fichiers tel que /tmp/ ou /var/ ou /home/.
Il est également très nécessaire de trouver les fichiers inutiles et de les libérer de votre disque dur.
Ce didacticiel décrit comment rechercher les fichiers et dossiers les plus volumineux de Linux à l'aide de find et du commandes.
Rechercher les fichiers et répertoires les plus volumineux
Pour découvrir les plus grands répertoires sous /home partition exécutée :
[unixcop@rhel-pc ~]$ du -a /home | sort -n -r | head -n 5
2435568 /home/qadry
2435568 /home
1530928 /home/qadry/.cache
846976 /home/qadry/.cache/mozilla/firefox/c2ivcm3y.default-default
846976 /home/qadry/.cache/mozilla/firefox
[unixcop@rhel-pc ~]$
OU
# du -a / 2>/dev/null | sort -n -r | head -n 5
Les deux commandes ci-dessus affichent les 5 plus grands répertoires de /home .
Rechercher les plus grands répertoires
Pour connaître les plus grands répertoires du répertoire de travail courant, exécutez :
[root@rhel-pc var]# du -hsx * | sort -rh | head -5
3.1G lib
324M cache
38M tmp
28M log
632K snap
[root@rhel-pc var]#
Les Options de du commande :
h :Tailles d'impression dans un format lisible par l'homme
x :ignore les répertoires sur différents systèmes de fichiers.
s :affiche uniquement un total pour chaque argument (résumé).
trier :Trier les lignes des fichiers texte
r :Inverser les comparaisons.
tête :Sort la première partie des fichiers.
n :nombre de lignes
Pour connaître les plus gros répertoires d'un répertoire précis … par exemple /var répertoire , exécutez :
[root@rhel-pc ~]# du -hs /var | sort -rh | head -5
7.0G /var
[root@rhel-pc ~]#
Et Pour afficher les dossiers/fichiers les plus volumineux, y compris les sous-répertoires, exécutez :
[root@rhel-pc var]# du -Sh | sort -rh | head -5
1.1G ./lib/snapd/snaps
553M ./lib/snapd/snap/kde-frameworks-5-core18/32/usr/lib/x86_64-linux-gnu
327M ./lib/snapd/snap/gnome-3-28-1804/161/usr/lib/x86_64-linux-gnu
251M ./lib/snapd/snapshots
240M ./lib/snapd/snap/spotify/46/usr/share/spotify
[root@rhel-pc var]#
Pour connaître uniquement les tailles de fichiers les plus importantes, exécutez :
[root@rhel-pc var]# find -type f -exec du -Sh {} + | sort -rh | head -n 5
261M ./lib/snapd/snaps/kde-frameworks-5-core18_32.snap
251M ./lib/snapd/snapshots/2_spotify_1.1.55.498.gf9a83c60_46.zip
192M ./lib/rpm/Packages
180M ./lib/snapd/snaps/spotify_46.snap
165M ./lib/snapd/snaps/gnome-3-28-1804_161.snap
[root@rhel-pc var]#
Dans la commande ci-dessus, seules les plus grandes tailles de fichiers étaient affichées.
Pour rechercher les fichiers les plus volumineux à un emplacement spécifié, incluez le chemin en plus de rechercher commande comme indiqué ci-dessous :
[root@rhel-pc ~]# find /home/qadry/ -type f -exec du -Sh {} + | sort -rh | head -n 5
138M /home/qadry/Downloads/Video/▶ TroubleShootingTools.mp4
102M /home/qadry/.local/share/TelegramDesktop/tupdates/temp/Telegram
102M /home/qadry/Downloads/Telegram/Telegram
53M /home/qadry/xdm-setup-7.2.11.tar.xz
53M /home/qadry/install.sh
[root@rhel-pc ~]#
La commande ci-dessus affichera le plus grand fichier de /home/qadry emplacement.
Trouvez le fichier le plus volumineux d'un répertoire et de ses sous-répertoires à l'aide de la commande find
Tapez la commande GNU/find suivante :
## Warning: only works with GNU find ##
# find /path/to/dir/ -printf '%s %p\n'| sort -nr | head -5 #for a specified location
# find . -printf '%s %p\n'| sort -nr | head -5
Par exemple :
Un emplacement spécifié : (par exemple /var )
[root@rhel-pc ]# find /var/ -printf '%s %p\n'| sort -nr | head -5
273375232 /var/lib/snapd/snaps/kde-frameworks-5-core18_32.snap
273375232 /var/lib/snapd/cache/127632cc622891a2cd69da70616530d2a15cccf0a9adb50f7d2dca3c1bfc56c0cc9052c39a8b22cadc619a43fd87048f
262885666 /var/lib/snapd/snapshots/2_spotify_1.1.55.498.gf9a83c60_46.zip
201011200 /var/lib/rpm/Packages
188289024 /var/lib/snapd/snaps/spotify_46.snap
OU
Répertoire de travail actuel :
[root@rhel-pc var]# find . -printf '%s %p\n'| sort -nr | head -5
273375232 ./lib/snapd/snaps/kde-frameworks-5-core18_32.snap
273375232 ./lib/snapd/cache/127632cc622891a2cd69da70616530d2a15cccf0a9adb50f7d2dca3c1bfc56c0cc9052c39a8b22cadc619a43fd87048f
262885666 ./lib/snapd/snapshots/2_spotify_1.1.55.498.gf9a83c60_46.zip
201011200 ./lib/rpm/Packages
188289024 ./lib/snapd/snaps/spotify_46.snap
Conclusion
Vous venez d'apprendre à rechercher, trouver et répertorier les répertoires/fichiers les plus grands ou les plus grands sous Linux en utilisant la combinaison de du/find et d'autres commandes.