====== du ======
* Objet : du => **D**isk **U**sage (//disque utilisé//)
* Niveau requis : {{tag>débutant avisé}}
* Commentaires : //Connaître l'utilisation disque. //
* Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-)
* Suivi :
* Création par [[user>smolski]] le 17-07-2014
* Testé par [[user>deuchdeb]] le 27-10-2016
* Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=9420 | Lien vers le forum concernant ce tuto]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
===== Introduction =====
La commande **du** permet de connaître :
- l'utilisation disque en kilo-octet par défaut
- dans le répertoire spécifié par tous ses sous-répertoires (autorisés en lecture)
- pour finir par le total du répertoire racine spécifié.
==== Syntaxe ====
du nom_fichier ou répertoire
===== Exemple =====
du Desktop/
492 Desktop/musique/musique
500 Desktop/musique
7704 Desktop/divers
128 Desktop/Listes de Lecture
848 Desktop/foto
6928 Desktop/install_flash_player_9_linux
416 Desktop/gspcav1-20070110/Vimicro
28 Desktop/gspcav1-20070110/Pixart
56 Desktop/gspcav1-20070110/Conexant
248 Desktop/gspcav1-20070110/Sunplus
8 Desktop/gspcav1-20070110/.tmp_versions
36 Desktop/gspcav1-20070110/Transvision
80 Desktop/gspcav1-20070110/Sonix
104 Desktop/gspcav1-20070110/Sunplus-jpeg
48 Desktop/gspcav1-20070110/utils
216 Desktop/gspcav1-20070110/decoder
44 Desktop/gspcav1-20070110/Etoms
28 Desktop/gspcav1-20070110/Mars-Semi
2512 Desktop/gspcav1-20070110
203756 Desktop/
Voila le résultat de mon répertoire Desktop de mon user.
===== Option -a =====
Cette option permet de lister les répertoires, mais aussi les fichiers contenus dans le répertoire cible.
du -a /tmp/
0 /tmp/orbit-laetitia/linc-782-0-5882eb3da7dbc
0 /tmp/orbit-laetitia/linc-782-0-c5a676952950
0 /tmp/orbit-laetitia/linc-965-0-41e28a2d23287
0 /tmp/orbit-laetitia/linc-798-0-23d81e5e407ec
0 /tmp/orbit-laetitia/linc-7bf-0-3701cd9e5e59c
4 /tmp/orbit-laetitia
392 /tmp/mancouleur.jpg
0 /tmp/.X11-unix/X0
4 /tmp/.X11-unix
4 /tmp/.X0-lock
420 /tmp/precicion.txt
264 /tmp/mhchem.zip
4 /tmp/plugtmp
4 /tmp/.ICE-unix
144 /tmp/mhchem/rsphrase.sty
84 /tmp/mhchem/mhchem.sty
280 /tmp/mhchem/mhchem.pdf
20 /tmp/mhchem/legal.txt
532 /tmp/mhchem
0 /tmp/.pcmanfm-socket--0-laetitia
0 /tmp/ssh-GDPoGr1851/agent.1851
4 /tmp/ssh-GDPoGr1851
340 /tmp/man.jpg
380 /tmp/font.odt
2880 /tmp/
La taille renvoyée par **du** peut varier en fonction du système de fichiers, de sa fragmentation, etc. Elle donne l'espace occupé par les fichiers, généralement un peu plus important que leur taille //théorique//.
Note de **vv222** chipée sur le chan en réponse à une question sur l'application **du** [[asso:salon-irc-df|#debian-facile]].
===== Option -c =====
Le total d'utilisation de chaque sous-répertoire sera affiché.
du -c /tmp/
4 /tmp/orbit-laetitia
4 /tmp/.X11-unix
4 /tmp/plugtmp
4 /tmp/.ICE-unix
532 /tmp/mhchem
4 /tmp/ssh-GDPoGr1851
2880 /tmp/
2880 total
===== Option -h =====
Pour obtenir une lecture en Mo et en Go, utiliser du avec l'option -h.
Par exemple, sur mon répertoire vidéo /media/disk-3 en Ko :
du /media/disk-3
4594708 /media/disk-3/chien-Cesar/D1
4275548 /media/disk-3/chien-Cesar/D3
4594708 /media/disk-3/chien-Cesar/D2
13464968 /media/disk-3/chien-Cesar
3465740 /media/disk-3/obadia_mpeg/dvd/VIDEO_TS
4 /media/disk-3/obadia_mpeg/dvd/AUDIO_TS
3465748 /media/disk-3/obadia_mpeg/dvd
10398036 /media/disk-3/obadia_mpeg
4 /media/disk-3/.Trash-0/files
8 /media/disk-3/.Trash-0
16 /media/disk-3/lost+found
4 /media/disk-3/.Trash-1000/files
8 /media/disk-3/.Trash-1000
4 /media/disk-3/cruejouls_avi
21899920 /media/disk-3/obadia-1
3493684 /media/disk-3/obadia-3/dvd/VIDEO_TS
4 /media/disk-3/obadia-3/dvd/AUDIO_TS
3493692 /media/disk-3/obadia-3/dvd
3724416 /media/disk-3/obadia-3
24119020 /media/disk-3/sitevideo2/lyon_090626
56702164 /media/disk-3/sitevideo2/elgg_091127
14270292 /media/disk-3/sitevideo2/elgg_091121
4 /media/disk-3/sitevideo2/concours_essai
34468796 /media/disk-3/sitevideo2/dole_090603
7990872 /media/disk-3/sitevideo2/mesage_090925
8723916 /media/disk-3/sitevideo2/arnas_081116
31500984 /media/disk-3/sitevideo2/dijon_090407
16850828 /media/disk-3/sitevideo2/dole_090530
34121836 /media/disk-3/sitevideo2/cha_090515
18264196 /media/disk-3/sitevideo2/arnas_090510
15520944 /media/disk-3/sitevideo2/elgg_090711
2081532 /media/disk-3/sitevideo2/elgg_090704
43896288 /media/disk-3/sitevideo2/chalamont_090731
29112236 /media/disk-3/sitevideo2/elgg_091113
337623912 /media/disk-3/sitevideo2
57239444 /media/disk-3/avi_elgg
8541584 /media/disk-3/mpeg
452892320 /media/disk-3
Devient :
du -h /media/disk-3
4,4G /media/disk-3/chien-Cesar/D1
4,1G /media/disk-3/chien-Cesar/D3
4,4G /media/disk-3/chien-Cesar/D2
13G /media/disk-3/chien-Cesar
3,4G /media/disk-3/obadia_mpeg/dvd/VIDEO_TS
4,0K /media/disk-3/obadia_mpeg/dvd/AUDIO_TS
3,4G /media/disk-3/obadia_mpeg/dvd
10G /media/disk-3/obadia_mpeg
4,0K /media/disk-3/.Trash-0/files
8,0K /media/disk-3/.Trash-0
16K /media/disk-3/lost+found
4,0K /media/disk-3/.Trash-1000/files
8,0K /media/disk-3/.Trash-1000
4,0K /media/disk-3/cruejouls_avi
21G /media/disk-3/obadia-1
3,4G /media/disk-3/obadia-3/dvd/VIDEO_TS
4,0K /media/disk-3/obadia-3/dvd/AUDIO_TS
3,4G /media/disk-3/obadia-3/dvd
3,6G /media/disk-3/obadia-3
24G /media/disk-3/sitevideo2/lyon_090626
55G /media/disk-3/sitevideo2/elgg_091127
14G /media/disk-3/sitevideo2/elgg_091121
4,0K /media/disk-3/sitevideo2/concours_essai
33G /media/disk-3/sitevideo2/dole_090603
7,7G /media/disk-3/sitevideo2/mesage_090925
8,4G /media/disk-3/sitevideo2/arnas_081116
31G /media/disk-3/sitevideo2/dijon_090407
17G /media/disk-3/sitevideo2/dole_090530
33G /media/disk-3/sitevideo2/cha_090515
18G /media/disk-3/sitevideo2/arnas_090510
15G /media/disk-3/sitevideo2/elgg_090711
2,0G /media/disk-3/sitevideo2/elgg_090704
42G /media/disk-3/sitevideo2/chalamont_090731
28G /media/disk-3/sitevideo2/elgg_091113
322G /media/disk-3/sitevideo2
55G /media/disk-3/avi_elgg
8,2G /media/disk-3/mpeg
432G /media/disk-3
===== Option -s =====
Voilà une option qui permet d'éviter de détailler et de n'indiquer que l'occupation totale du répertoire spécifié :
du -sh /media/disk-3
432G /media/disk-3
On peux aussi lister le poids de chaque fichier d'un dossier, par exemple essayez depuis votre /home/user :
du -hs */
//Merci //**enikar**// sur irc #debian-facile !//
===== Option --max-depth=n =====
Cette option permet de donner les tailles des sous-répertoires présents dans le répertoire dans lequel on va fixer un niveau de recherche "n".\\
Par exemple, je veux rechercher les tailles des sous-répertoires présents juste sous **/media/disk-3**. Le niveau sera donc "1".
du --max-depth=1 /media/disk-3
13464968 /media/disk-3/chien-Cesar
10398036 /media/disk-3/obadia_mpeg
8 /media/disk-3/.Trash-0
16 /media/disk-3/lost+found
8 /media/disk-3/.Trash-1000
4 /media/disk-3/cruejouls_avi
21899920 /media/disk-3/obadia-1
3724416 /media/disk-3/obadia-3
337623912 /media/disk-3/sitevideo2
57239444 /media/disk-3/avi_elgg
8541584 /media/disk-3/mpeg
452892320 /media/disk-3
//Et oui, la vidéo, ça occupe de l'espace !// ;-)
===== Option x =====
**d33p** : //Les 26T c'est dans media mais rien à avoir avec / (ce sont des volumes montés). \\
Donc je ne comprends pas pourquoi [[doc:systeme:df|avec "df"]] je vois uniquement 174M de libre et lorsque je fais un "du" on voit bien qu'il n'y a pas 130G d'occupé...//
**raleur** : C'est pour cela qu'il faut ajouter l'option ''-x'' à du pour rester dans les limites du système de fichiers.
**du** ne peut prendre en compte que le contenu qui est visible dans l'arborescence du système de fichiers.
Il y a trois cas où du contenu peut lui échapper :
- Un fichier supprimé alors qu'il est encore ouvert par un processus.
- //[[doc:systeme:htop|L'arrêt du processus]] ou le redémarrage du système libère l'espace alloué et résoud le problème.//
- Un fichier //caché// sous un montage.
- Cela arrive typiquement quand on croit écrire dans un volume qui n'est pas monté.
Pour voir ce qui est caché sous les points de montage, [[doc:systeme:mount|monter la racine]] en bind :
mount --bind / /mnt
du -hxd1 /mnt | sort -h
L'espace de certains systèmes de fichiers peut être occupé par des instantanés ou sous-volumes (btrfs, nilfs).
Merci aux intervenants sur le forum ici :
* [[https://debian-facile.org/viewtopic.php?id=23962]]
===== Quel est le plus gros dossier ? =====
Entrer la commande suivante permet de hiérarchiser les dossiers par ordre de grandeur, avec le nombre de dossiers que l'on veut afficher, ici 6 :
du -hsx *|sort -rh|head -6
79G Images
33G Vidéos
26G Musique
3,6G Documents
12K Modèles
8,0K Public
Maintenant si on veut savoir quel dossier est le plus gros dans Images.
cd /home/utilisateur/Images
du -hsx *|sort -rh|head -15
26G Photos2016
12G Photos2015
11G Photos2013
6,9G Photos2014
5,0G Photos2012
3,9G Photos2011
2,4G Photos2010
2,2G PhotosAnnimaux
465M Photos2006
432M Photos2005
293M Photos2008
197M Photos2007
184M Photos2009
===== Liens =====
* [[doc:systeme:df|La commande df]] mesure l'espace disque disponible.