Contenu | Rechercher | Menus

Annonce

Ubuntu 16.04 LTS
Commandez vos DVD et clés USB Ubuntu-fr !

Pour en savoir un peu plus sur l'équipe du forum.

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

#1 Le 08/01/2015, à 12:16

moko138

[Tutoriel] ncdu - Repérer les éléments volumineux

/!\  Merci de ne pas poster de demande d'aide dans ce fil.
                                                - - - - -
ncdu ou comment repérer les éléments qui prennent trop de place

  Vous connaissez la commande du et certaines de ses options qui permettent de classer par taille le contenu d'un dossier, en finissant par les plus gros éléments :

du -ham | sort -h   # ou bien  du -ah /* | sort -h

  Ça marche, mais c'est inexploitable parce que, tout étant affiché à la fois, les lignes intéressantes sont noyées dans la masse redondante.

  Avec

du -sm /* | sort -rn  # ou avec   du -sh /* | sort -h

vous aurez la taille des dossiers mais vous n'aurez pas les éléments cachés.
  Donc pour examiner leur contenu vous devrez recommencer 20 fois en alternant avec autant de

cd /un/gros/sous-répertoire

avant de trouver la masse de wink perturbateurs.

- - -

Or il existe, dans les dépôts universe, un petit utilitaire qui simplifie grandement les choses : ncdu.

  Ci-dessous, un /home vu par ncdu :

ncdu 1.8 ~ Use the arrow keys to navigate, press ? for help                     
--- /home/moi --------------------------------------
.  37,3MiB [##########] /.cache                                                 
   26,3MiB [#######   ] /.mozilla
   14,9MiB [####      ] /.Qarte
    3,0MiB [          ] /.gimp-2.6
    2,1MiB [          ] /.config
  840,0KiB [          ] /.local
  744,0KiB [          ] /.thumbnails
  348,0KiB [          ] /.gstreamer-0.10
  124,0KiB [          ]  dmesg_crash150531_08h15b.txt
  124,0KiB [          ]  testdisk20150520.log
  112,0KiB [          ]  150627-08H41.png
   68,0KiB [          ]  testdisk_HT3_320_20150509.log
   64,0KiB [          ]  testdisk.log
   64,0KiB [          ]  index.html
   60,0KiB [          ] /.gconf
   56,0KiB [          ]  .bash_history
   (...)
 Total disk usage:  86,8MiB  Apparent size:  79,2MiB  Items: 3600

  On voit :
- qu'un seul niveau d'arborescence est affiché, d'où une bonne lisibilité ;
- que ncdu montre les éléments cachés ;
- que le seul critère de classement est la taille (par défaut, sauf usage d'options).

- - -

Naviguer dans l'arborescence avec ncdu 
  Pour descendre ou remonter dans l'arborescence, pas besoin de "cd". il suffit d'utiliser les flèches "bas" et "haut" et de valider par "Entrée".
Remarque : on ne peut remonter plus haut que son point de départ.

- - -

Supprimer grâce à ncdu
  Il suffit, pour supprimer un fichier, de le sélectionner avec la flèche "bas",
(notez les barres qui s'actualisent, d'adresse en haut, d'état en bas). Puis...
1418647948.jpg

de taper d, comme "delete", de sélectionner "yes" (par la flèche gauche) et enfin de valider par Entrée. Donc la suppression par inadvertance est impossible.

- - -

ncdu appliqué à la racine
  On peut utiliser ncdu aussi pour repérer les gros importuns en-dehors du /home, dans la racine ou dans un périphérique externe.

ncdu /      # pas besoin de sudo, sauf cas particuliers
ncdu 1.8 ~ Use the arrow keys to navigate, press ? for help                                     
--- / ------------------------------
.  61,9GiB [##########] /Donnees                                                           
    3,0GiB [          ] /usr
. 452,9MiB [          ] /var
. 298,8MiB [          ] /lib
. 195,6MiB [          ] /home
  100,9MiB [          ]  .test.XCF
  100,2MiB [          ] /.thumbnails-normal
   48,6MiB [          ] /boot
.  16,3MiB [          ] /etc
   13,7MiB [          ] /sbin
(...)
   24,0KiB [          ] /media
!  16,0KiB [          ] /lost+found
(...)
e   4,0KiB [          ] /cdrom
.   0,0  B [          ] /proc
.   0,0  B [          ] /sys
@   0,0  B [          ]  libnss3.so
(...)
 Total disk usage:  66,0GiB  Apparent size:  67,7GiB  Items: 280858

Grâce au critère unique de taille, on voit les intrus, ici vers 100 Mio, fichier et dossier cachés.

À la dernière ligne, notez "Items", soit le nombre d'inoeuds utilisés !

/!\  ncdu fonctionne aussi en tty, ce qui est précieux quand l'affichage est dans les choux.

Supplément apprécié : /proc est correctement évalué. smile

taille du paquet ncdu : moins de 50 ko. + les dépendances ncurses, si vous ne les aviez  pas déjà : 1Mo.


smile Merci à inbox de m'avoir fait découvrir ce bijou !

Dernière modification par moko138 (Le 25/08/2017, à 19:00)


%NOINDEX%
Un utilitaire méconnu : ncdu

Hors ligne

#2 Le 08/01/2015, à 16:31

moko138

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

En pratique :

sudo apt-get install ncdu

  Voir son /home (pour mémoire, en Azerty le ~ s'obtient par AltGr 2) :

ncdu ~

  Voir sa racine moins les périphériques amovibles montés dans /media :

ncdu / --exclude media

  Voir sa racine moins plusieurs répertoires spécifiés
(dans cet exemple, on exclut les deux répertoires généralement les plus longs à calculer) :

ncdu / --exclude media --exclude usr

  Ne décompter que les fichiers et répertoires appartenant au système de fichiers spécifié :

ncdu / -x

- très pratique pour exclure /media, le lecteur de DVD et tout ce qui est monté ;
N.B. : selon que /home est ou non sur la même partition que /,  ncdu -x /  comptabilisera /home ou non.

Très pratique pour surveiller l'inflation des logs :

ncdu /var/log

  - -

Rafraîchir l'affichage après nettoyage ou déplacement d'un sous-répertoire :

r

Trier par Noms / ordre alphabétique inverse:

n

Trier par taille (Size) / taille inverse:

s

Masquer / afficher les éléments cachés (Excluded):

e

Quitter :
q  ou  Ctrl c

Si - et seulement si - vous avez besoin de vérifier le poids ou le contenu d'un répertoire appartenant à root, sudo ncdu vous y donnera accès. Mais abstenez-vous d'utiliser la suppression dans le cadre de sudo ncdu.

C'est par

sudo ncdu /root

que les victimes de bleachbit obtiendront L'information tant recherchée.

= =

Vous cherchez les mammouths dans votre cuisine, pas les chatons !
Donc dans votre fil, remplacez tous les chatons par un seul "(...)".
Un chaton = moins de 5% du total.

--- / ----------------------------------
     14GiB [##########] /var     # Mammouth
    3,1GiB [#####     ] /usr     # Mammouth
    2,1GiB [####      ] /root    # Mammouth
  297,9MiB [#         ] /lib
. 117,3MiB [          ] /home                                                                          
(...)                             # Chatons divers
 Total disk usage:  20GiB  Apparent size:  19GiB  Items: 765432 # MAMMOUTH

Votre fil en sera plus lisible !

= =

Et toujours smile :

man ncdu

Dernière modification par moko138 (Le 13/11/2017, à 09:08)


%NOINDEX%
Un utilitaire méconnu : ncdu

Hors ligne

#3 Le 10/01/2015, à 07:40

tiramiseb

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

Mwai, en gros c'est Baobab en console...


Sébastien Maccagnoni-Munch - administrateur Linux depuis le XXe siècle
Domotego : boutique dédiée à la domotique DIY - https://www.domotego.com
Consultant informatique indépendant - Geek et tout plein d'autres choses

Hors ligne

#4 Le 10/01/2015, à 12:43

moko138

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

ô sagace d'Alsace, tes 16 Go de ram te font oublier la lenteur de baobab et autres applis graphiques.
Mais sur un pc à 2 Go de ram, compare baobab avec

ncdu -x /

et tu seras ébloui !


%NOINDEX%
Un utilitaire méconnu : ncdu

Hors ligne

#5 Le 10/01/2015, à 13:42

tiramiseb

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

Il est si lourd que ça, Baobab ?
Il ne m'a jamais semblé excessivement lourd. Menfin comme tu dis, on n'a pas le même matériel wink


Sébastien Maccagnoni-Munch - administrateur Linux depuis le XXe siècle
Domotego : boutique dédiée à la domotique DIY - https://www.domotego.com
Consultant informatique indépendant - Geek et tout plein d'autres choses

Hors ligne

#6 Le 19/05/2016, à 06:25

PPdM

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

Moko as tu comparer avec mc?
Si oui  qu'est ce que ça dit ?

Hors ligne

#7 Le 19/05/2016, à 08:33

moko138

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

mc  n'a rien à voir avec ncdu.

mc donne pour taille de presque tous les répertoires "4096",
ncdu donne leur taille exacte dès qu'on le lance.

mc prétend que mes répertoires JPG/ et Paquets/ font le même poids (16.384 octets).
ncdu montre que JPG/ est 100 fois plus lourd que Paquets/.

mc est une usine dont le man pèse 136ko à lui tout seul !!!
ncdu ne fait qu'une chose et la fait bien.

La Doc a écrit :

mc, est un gestionnaire de fichiers en mode texte. (...).Il permet également de se connecter sur un hôte distant en FTP. (...) ou (...) via SSH.

  - -
mc, c'est une gare de triage,
ncdu, c'est un bracelet-montre


%NOINDEX%
Un utilitaire méconnu : ncdu

Hors ligne

#8 Le 19/05/2016, à 10:27

Compte anonymisé

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

bonjour,
ncdu est très bien mais il faut l'installer et quand le disque est plein, du peut être tout de même pratique aussi


- qu'un seul niveau d'arborescence est affiché, d'où une bonne lisibilité ;
- que ncdu montre les éléments cachés ;
- que le seul critère de classement est la taille (par défaut, sauf usage d'options).

avec du aussi:

sudo du -sch .[!.]* * |sort -h

ou

sudo du -sch .[!.]* * |sort -h | less

#9 Le 19/05/2016, à 10:46

moko138

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

Localhost,
Merci de ces précisions.
Mais
- du te permet-il de te déplacer dans l'arborescence aussi simplement que ncdu (flèche + Entrée)? j'en doute.
- du te permet-il de supprimer un gros importun? j'en doute.
- du te permet-il de changer le critère de tri en tapant une seule touche? j'en doute.
- du te permet-il de rafraîchir l'affichage en tapant une seule touche? j'en doute.


%NOINDEX%
Un utilitaire méconnu : ncdu

Hors ligne

#10 Le 19/05/2016, à 11:22

nam1962

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

Merci ! smile


Almanet doLys de l'open source : mon tuto pour optimiser / finaliser une install
Xubuntu devel - Manjaro unstable - OpenSUSE tumbleweed (GeckoLinux) -Debian Testing Et vous ?
57 convertis  IRL (n'ont pas eu le choix...).
Un jeune site que j'aime bien, le top du T-shirt homme ...bio et éthique en plus : https://goudronblanc.com

En ligne

#11 Le 19/05/2016, à 12:11

grandtoubab

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

salut

je me contente de vouloir savoir les plus gros d'abord

du -ham | sort -nr | more

suivi de ctrl C et ya basta big_smile

Dernière modification par grandtoubab (Le 19/05/2016, à 12:13)


Linux tout seul sur HP Pavilion DV7 et Acer aspire T650
Debian 10 Buster XFCE/Gnome3 sur sda1
Canon MG3650 en wifi

En ligne

#12 Le 19/05/2016, à 13:10

moko138

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

grandtoubab a écrit :

je me contente de vouloir savoir les plus gros d'abord

du -ham | sort -nr | more

suivi de ctrl C et ya basta big_smile

1er inconvénient : ça donne une trop longue liste.
Tu peux l'améliorer en ne gardant que les 5 plus gros

du -ham | sort -nr | head -n 5

Mais alors tu découvres
1 autre inconvénient par rapport à la proposition de Localhost
2 autres inconvénients par rapport à ncdu.
  - -

Relis plutôt le fil, en expérimentant.


%NOINDEX%
Un utilitaire méconnu : ncdu

Hors ligne

#13 Le 19/05/2016, à 14:09

Compte anonymisé

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

moko138 a écrit :

Localhost,
Merci de ces précisions.
Mais
- du te permet-il de te déplacer dans l'arborescence aussi simplement que ncdu (flèche + Entrée)? j'en doute.
- du te permet-il de supprimer un gros importun? j'en doute.
- du te permet-il de changer le critère de tri en tapant une seule touche? j'en doute.
- du te permet-il de rafraîchir l'affichage en tapant une seule touche? j'en doute.


Ne doute pas, ncdu est très bien, surtout que c'est facile à se souvenir pour la saisie, pas besoin de faire de copié/collé de la commande du que j'ai donné, c'était simplement à titre indicatif pour souligner qu'avec du on peut arriver au même résultat d'affichage mais faut s'en souvenir de ces syntaxes... ncdu simplifie en effet la tâche et s'il était installé par défaut (113 Ko), cela serait bien pour ceux qui ont leur partition  remplie et se retrouvent en mode console...

Dernière modification par Compte anonymisé (Le 19/05/2016, à 14:15)

#14 Le 23/06/2016, à 08:31

el_joko

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

bonjour,
en complément de ce qui est proposé.
Pour ma part je surveille régulièrement la taille des répertoire à partir du /home/$USER qui sont > à 1 giga et classé par ordre décroissant
je me permets de vous adresser le script.
note: on peut se passer de | lolcat (ça c'est juste pour le fun)

#!/bin/bash
#affichage du home et de ses répertoires de plus d'un giga humainement lisible !
#on met tout dans un tableau (boucle for...done;)
#le for x in veut dire pour chaque ligne de la commande $(du -m --max-depth 1 /home/* 2>&1 | sort -nr | grep -E '[0-9]{4}' |sort -nr);
#mettre cette ligne dans x, puis mettre ce x dans un tableau tab
#la commande (du ...-nr):
#du en mega de profondeur 1 du répertoire /home/
#2>&1 pour ne pas afficher les messages d'erreurs
#sort -nr tri inversé
#le grep ne garde que les lignes qui ont au moins 4 chiffres (par exemple 4000, soit 4 gigas)

i=0
for x in $(du -m --max-depth 1 /home/* 2>&1 | sort -nr | grep -E '[0-9]{4}' |sort -nr);
	do
	tab[$i]="$x"
	i=$((i +1));
 done;
#une fois le tableau rempli on le parcourt
#on analyse le nombre de sous-répertoire
tput civis #masque curseur

#on va lire le tableau par pas de 2 (le répertoire en i-1 et la taille en i)
echo "● ▶ Taille des répertoires principaux ◀ ● " | lolcat 
echo "                       ★ ★ ★ " | lolcat

for j in `seq 1 2 "$i"`;
	do
	jmin=$((j -1))
	#on suprimme les "/" pour n'afficher que n et n-1  
	niv=$(echo "${tab[$j]}"| grep -o "/" | wc -l)
	((niv=niv+1))
	#on transforme les megas octet en  gigas
	gig=$((${tab[$jmin]}/1000))
	rep=$(echo "${tab[$j]}" | cut -d "/" -f$niv)
	echo "◉ $rep $gig"" G." | lolcat
	#echo "${tab[$j]} $gig"" G." | lolcat
done
#le sleep 100 garde le terminal ouvert 100 secondes
sleep 100

ps. comme c'est un script, il peut y avoir des fautes d'orthographe dans les commentaires (ces derniers étant destinés à un ami)

Hors ligne

#15 Le 23/06/2016, à 08:55

bigoud92

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

el_joko a écrit :

ps. comme c'est un script, il peut y avoir des fautes d'orthographe dans les commentaires (ces derniers étant destinés à un ami)

Tiens tiens mais je le connais ce scripts ^^ big_smile


Amateur d'Ubuntu depuis 2009 je suis novice mais je me soigne, et je suis animateur de podcast débutant l'apéro des papas manchots
PC portable sony vaio ubuntu 16.04 64bits : Intel® Core™ i5-2410M CPU @ 2.30GHz , 4GB ram
Ma chaîne youtube : http://www.youtube.com/c/johnguecko
Mon site wordpress: http://www.johnguecko.wordpress.com

Hors ligne

#16 Le 23/06/2016, à 18:45

el_joko

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

j't'ai r'connu :-)
mais tu as vu le script, je l'ai rendu -disons- plus joli

Hors ligne

#17 Le 23/06/2016, à 19:10

bigoud92

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

el_joko a écrit :

j't'ai r'connu :-)
mais tu as vu le script, je l'ai rendu -disons- plus joli

Oui je l'ai remplacer du coup cool


Amateur d'Ubuntu depuis 2009 je suis novice mais je me soigne, et je suis animateur de podcast débutant l'apéro des papas manchots
PC portable sony vaio ubuntu 16.04 64bits : Intel® Core™ i5-2410M CPU @ 2.30GHz , 4GB ram
Ma chaîne youtube : http://www.youtube.com/c/johnguecko
Mon site wordpress: http://www.johnguecko.wordpress.com

Hors ligne

#18 Le 07/10/2016, à 20:00

iznobe

Re : [Tutoriel] ncdu - Repérer les éléments volumineux

Localhost a écrit :

bonjour,
ncdu est très bien mais il faut l'installer et quand le disque est plein, du peut être tout de même pratique aussi


- qu'un seul niveau d'arborescence est affiché, d'où une bonne lisibilité ;
- que ncdu montre les éléments cachés ;
- que le seul critère de classement est la taille (par défaut, sauf usage d'options).

avec du aussi:

sudo du -sch .[!.]* * |sort -h

ou

sudo du -sch .[!.]* * |sort -h | less

juste une chose a dire big_smile  :

pourquoi faire simple quand on peut faire compliqué tongue

Hors ligne