Forum Linux.général Traquer le mangeur de disque

Posté par  (site web personnel) .
Étiquettes : aucune
0
14
juil.
2004
Bonjour,
existe t'il un utilitaire qui permette de traquer les répertoires les plus gros,
exemple mon répertoire personnel fait 11.5Go et je sais pas trop ou ils sont.
Parce que je pense qu'il y beaucoup de cette quantité de fichier que j'utilise pas et que je pourrais déplacer sur mon serveur.
  • # utilitaire graphique

    Posté par  . Évalué à 6.

    filelight mais c'est du KDE :/
    • [^] # Re: utilitaire graphique

      Posté par  . Évalué à 2.

      Une petite image pour montrer combien ce soft est genial !
      http://methylblue.com/filelight/filelight.png(...)

      Le site du projet :
      http://methylblue.com/filelight/(...)

      Sachant que cela offre des petits plus, vu que l'on peut "naviguer" avec cet outil (refaire l'affichage avec comme racine le repertoire selectionné, et donc voir de nouveaux details), et aussi de memoire, ouvrir un shell ou lancer une commande sur le repertoire selectionné.

      Enfin bon, essayez le, c'est du tres tres bon/pratique.

      Luzerne, fan mais ca a du se voir ;)
  • # du ?

    Posté par  . Évalué à 3.

    du --max-depth=N

    ça devrait correspondre à tes besoins, non?
    • [^] # Re: du ?

      Posté par  (site web personnel) . Évalué à 2.

      du /home/cedric | sort -rn | less

      Les répertoires sont triés par ordre décroissant de poids et les poids sont exprimées en Ko.

      --max-depth et -a peuvent t'être utiles aussi (voir page de man de du).
    • [^] # Re: du ?

      Posté par  . Évalué à 3.

      Tiens je viens d'ouvrir la man de "du" et je découvre l'option "-S" qui est bien intérressante aussi pour ce problème. Elle permet de compter par répertoire la taille totale des fichiers directement contenus, sans les sous-répertoires. Suivant le type de bazar qu'on a et son organisation, ça peut être pas mal (pas terrible pour mesurer la place occupée par /home/thomas/tmp/linux-2.6.7, mais pas mal pour retrouver le gros tas de fichiers oubliés en vrac dans /home/thomas/old/downloads).

      Donc je vote pour «du -S /home/thomas | sort -n», ou bien encore la version formatée/triée que j'ai posté plus bas en la modifiant très légerement (a priori, au lieu de «du -sb "$dir"* | ...», utiliser «du -Sb "$dir" | ...»).
  • # Konqueror

    Posté par  . Évalué à 3.

    Si tu as KDE 3.2 (ou 3.3), y'a le mode d'affichage FSViewPart
  • # kdirstat

    Posté par  (site web personnel) . Évalué à 3.

  • # bash

    Posté par  . Évalué à 4.

    Perso j'ai ça dans mon bazar d'environnement :
    #------------ prettysize: format a bytes count --------
    prettysize() {
    	local suffix div result
    	if [ $1 -lt 1024 ]; then
    		div=1 ; suffix="B "
    	elif [ $1 -lt 1048576 ]; then
    		div=1024 ; suffix="KB"
    	elif [ $1 -lt 1073741824 ]; then
    		div=1048576 ; suffix="MB"
    	else
    		div=1073741824 ; suffix="GB"
    	fi
    	result=$(echo -e "scale=1 \n$1/$div \nquit" | bc)
    	result="${result} ${suffix}"
    	while [ ${#result} -lt 9 ] ; do
    		result=" ${result}"
    	done
    	echo "${result}"
    }
    
    #-------- sdu: sorted "du -sh" --------
    sdu () {
    	local dir dirsize subpath
    	local totalsize=0
    	if [ "$#" == "0" ]; then
    		dir='./'
    	else
    		dir="${1%/}/"
    	fi
    	du -sb "$dir"* | sort -n | \
    		{ read dirsize subpath
    		  while [ -n "$subpath" ] ; do
    			 echo " $(prettysize $dirsize)   ${subpath}"
    			 let "totalsize += dirsize"
    			 read dirsize subpath
    		  done
    		  local total="$(prettysize $totalsize)   ${dir}"
    		  echo "-${total//?/-}-"
    		  echo " ${total}"
    		}
    }
    
    Ce qui me permet d'aller à la pêche au gros comme ça :
    % sdu /usr
          9 B    /usr/doc
          9 B    /usr/man
         10 B    /usr/info
         10 B    /usr/tmp
     1009.3 KB   /usr/local
        2.8 MB   /usr/i686-pc-linux-gnu
        3.9 MB   /usr/libexec
       15.4 MB   /usr/sbin
       21.4 MB   /usr/games
       25.6 MB   /usr/qt
       44.6 MB   /usr/kde
       71.4 MB   /usr/X11R6
       72.7 MB   /usr/include
      294.7 MB   /usr/bin
        1.0 GB   /usr/src
        1.3 GB   /usr/lib
        2.1 GB   /usr/share
    -------------------
        5.0 GB   /usr/
    
    • [^] # Re: bash

      Posté par  . Évalué à 2.

      Juste pour le plaisir d'être un porc, une ligne à rajouter après la déclaration de sdu pour avoir une autre version (sdu2) utilisant le "-S" (cf commentaire là haut) :
      eval "$(declare -f sdu | sed 's:sdu:sdu2:;s:du -sb "\$dir"\*:du -Sb "$dir":')"
  • # Dans le même style

    Posté par  . Évalué à 2.

    Dans le même genre d'idée tu es peut-être intéressé par http://www.perlmonks.org/index.pl?node_id=49198(...)
  • # fichier

    Posté par  . Évalué à 3.

    pour les repertoires voir plus haut

    pour les fichier: pour trouver les plus gros :
    find ton_repertoire -type f -size +3000k -exec ls \-l {} \; |sort -n -k 5

    cd qui veut dire : trouver tous les fichiers de ton_repertoire de plus de 3000Ko et faire "ls -l" dessus et les trier suivant la valeur numerique du 5 eme champ de "ls -l " c'est a dire la taille.
  • # Merci

    Posté par  (site web personnel) . Évalué à 1.

    Je vous remercie de vos réponse, j'ai appris pas mal la.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.