web-dev-qa-db-fra.com

Comment comprendre ce qui occupe de l'espace disque?

Je cherche une alternative linux à WinDirStat . Je voudrais savoir ce qui prend de la place sur mes disques durs.

Un programme qui fonctionne sur console et ne nécessite pas d'interface utilisateur est préférable.

89
ripper234

En fonction de vos problèmes dans installation de ncd ma recommandation serait d'utiliser du et sort ensemble.

Par exemple:

  • du /home | sort -rn (recherchera tous les fichiers/répertoires sous/home et les triera du plus grand au plus petit.
  • du -h /home | sort -rh (identique mais l'affichera en Mo/Ko/etc) - Notez que cela nécessite coreutils 7.5 ou plus récent (sort --version vérifier)

Vous pouvez remplacer/home par n'importe quel répertoire de votre choix.

75
N J

Si vous voulez un outil en ligne de commande, je préfère ncd , une version ncurses de du. Il analyse le disque (ou un dossier donné), puis affiche les utilisations de l'espace de niveau supérieur; vous pouvez sélectionner un répertoire donné pour obtenir le résumé correspondant pour ce répertoire, et revenir en arrière sans avoir besoin de réanalyser:

Screenshot of ncdu


Si vous êtes d'accord avec un programme GUI, Filelight est la chose la plus proche de WinDirStat que j'ai trouvée; il montre une vue graphique de la consommation d'espace:

Screenshot of Filelight

Comme ncdu, Filelight vous permet de sélectionner un répertoire donné pour obtenir la répartition de ce répertoire

92
Michael Mrozek

Vous devez savoir que WinDirStat est en fait un port de KDirStat , qui est un programme Linux/KDE. Donc, si vous cherchez une alternative Linux à WinDirStat, vous devriez certainement jeter un œil à KDirStat . Il est déjà emballé dans la plupart des distributions, installez-le simplement.

Une autre alternative est FileLight, déjà cité par Michael Mrozek, et le plugin Konqueror fsview (vous pouvez l'exécuter de manière autonome à partir de la ligne de commande).

43
Juliano

Un autre programme GUI est: baobab

alt text

34
sudobash

Utilisez QDirStat (anciennement KDirStat).

Il comprend un script Perl qui génère un fichier cache sur le serveur/console sans avoir besoin d'une interface utilisateur pour être exécutée/installée; transférez-le sur votre ordinateur de bureau et affichez-le dans le client gui.

Voir https://unix.stackexchange.com/a/256516/186308 pour plus de détails.

11
icyerasor

Je préfère la ligne de commande suivante:

$  du -s -m -x * | sort -n

En le décomposant, du montre l'utilisation du disque; -s indique d'afficher le total de chaque argument (chaque élément du répertoire actuel), -m indique afficher la taille en mégaoctets. Cela facilite le travail du tri; sorte ne comprend pas vraiment le -h production. Le -x ignore les autres systèmes de fichiers; ceci est utile lorsque vous essayez de trouver des porcs spatiaux dans /var, et /var/spool/foo est un système de fichiers différent.

7
P Joslin

Il y a aussi ce cool python de /www.vrplumber.com/programming/runsnakerun/

bzr branch lp:~mcfletch/squaremap/trunk squaremap

Ce n'est pas le plus riche en fonctionnalités, mais il est exécuté à partir d'un seul script python donc il est extrêmement portable.

alt text

6
Falmarri

Si vous avez regardé l'écran about sur windirstat, cela vous a montré qu'il est basé sur kdirstat.

http://kdirstat.sourceforge.net/

6
DF1eCH

Vous pouvez également essayer Gd Map , un autre outil GUI basé sur les treemaps.

4
Bruno

xdiskusage est très flexible, léger avec des dépendances très légères, facile à compiler ..

Il montre un arbre de gauche à droite que vous pouvez naviguer avec la souris ou les touches fléchées, zoomer (cliquer ou entrer), masquer certaines parties pour une meilleure vue, changer l'ordre de tri, le nombre de couleurs, etc. avec les touches ou le menu contextuel.

Il est si léger que vous pouvez l'utiliser sur une liaison SSH distante avec de bonnes performances. Dans ce cas, je recommande -q option de ligne de commande pour désactiver la barre de progression qui apparaît pendant la marche des fichiers.

Vous pouvez également éventuellement exécuter du vous-même au préalable.

Une situation est un système de fichiers distant qui est plein ou presque plein. Sur ce système, exécutez du -ak | gzip >log_of_disk_usage.txt.gz, récupérez la sortie et exécutez gzip -dc log_of_disk_usage.txt.gz | xdiskusage -aq localement.
Ou même ssh myremotesystem "cd /filesystem_near_full/ ; du -ak | gzip" > log_of_disk_usage.txt.gz pour stocker le résultat localement sans rien écrire à distance.

xdiskusage ne propose pas de modifier le système de fichiers (comme déplacer vers la corbeille, etc.) mais vous pouvez copier un chemin vers le presse-papiers et le coller dans un gestionnaire de fichiers, un terminal, etc.

xdiskusage screenshot

3

J'ai récemment utilisé l'outil de ligne de commande (CLI, pas TUI): http://zevv.nl/play/code/philesight/

Il produit un fichier PNG que vous pouvez voir ailleurs. Il dispose également d'un script CGI.

Vous n'êtes probablement pas limité au mode texte sur votre poste de travail local, donc cela devrait être approprié.

2
OCTAGRAM

Duc ( https://duc.zevv.nl/ ) fonctionnera à partir de la ligne de commande.

Il peut être installé et utilisé comme ceci dans Debian 9:

# apt install duc
# duc index /
# duc graph /

Avec cela, vous obtiendrez un fichier nommé duc.png dans le répertoire courant. Maintenant, vous pouvez copier ce fichier sur un autre ordinateur compatible avec l'interface graphique et il ressemblera à ceci: duc.png

REMARQUE: Duc remplace l'outil mentionné par @OCTAGRAM dans sa réponse.

1
Jaime Hablutzel

Aussi pour voir les fichiers dans un répertoire spécifique triés par taille après avoir trouvé le répertoire en utilisant du use:

ls -lrSh
1
Wodin