sviluppo-web-qa.it

Come capire cosa sta occupando spazio su disco?

Sto cercando un'alternativa a Linux per WinDirStat . Vorrei sapere cosa sta occupando spazio sui miei dischi rigidi.

È preferito un programma che funziona su console e non richiede un'interfaccia utente.

89
ripper234

In base ai tuoi problemi in installando ncd la mia raccomandazione sarebbe di usare du e sort insieme.

Per esempio:

  • du /home | sort -rn (cercherà tutti i file/directory in/home e li ordinerà dal più grande al più piccolo.
  • du -h /home | sort -rh (uguale ma lo mostrerà in MB/KB/ecc.). Nota che richiede coreutils 7.5 o versioni successive (sort --version controllare)

Puoi sostituire/home con qualsiasi directory di tua scelta.

75
N J

Se si desidera uno strumento da riga di comando, preferisco ncd , una versione di ncurses di du. Esegue la scansione del disco (o di una determinata cartella) e quindi mostra gli utilizzi dello spazio di livello superiore; puoi selezionare una determinata directory per ottenere il riepilogo corrispondente per quella directory e tornare indietro senza bisogno di rianalizzare:

Screenshot of ncdu


Se stai bene con un programma GUI, Filelight è la cosa più vicina a WinDirStat che ho trovato; mostra una vista grafica del consumo di spazio:

Screenshot of Filelight

Come ncdu, Filelight ti consente di selezionare una determinata directory per ottenere la suddivisione per quella directory

92
Michael Mrozek

Dovresti essere consapevole che WinDirStat è in realtà una porta di KDirStat , che è un programma Linux/KDE. Quindi, se stai cercando un'alternativa Linux a WinDirStat, dovresti sicuramente dare un'occhiata a KDirStat . È già confezionato nella maggior parte delle distribuzioni, basta installarlo.

Un'altra alternativa è FileLight, già citato da Michael Mrozek, e il plugin Konqueror fsview (puoi eseguirlo autonomamente dalla riga di comando).

43
Juliano

Un altro programma GUI è: baobab

alt text

34
sudobash

Usa QDirStat (precedentemente KDirStat).

Include uno script Perl che genera un file cache sul server/console senza che sia necessario eseguire/installare un'interfaccia utente; trasferiscilo sul tuo computer desktop e visualizzalo nel client gui.

Vedi https://unix.stackexchange.com/a/256516/186308 per i dettagli.

11
icyerasor

Preferisco la seguente riga di comando:

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

Spezzandolo, du mostra l'utilizzo del disco; -s dice stampa il totale per ogni argomento (ogni elemento nella directory corrente), -m dice mostra la dimensione in Megabyte. Ciò semplifica il funzionamento dell'ordinamento; sort non capisce davvero il -h produzione. Il -x ignora altri filesystem; questo è utile quando si cerca di trovare spazio maiali in /var, e /var/spool/foo è un file system diverso.

7
P Joslin

C'è anche questo fantastico python da /www.vrplumber.com/programming/runsnakerun/

bzr branch lp:~mcfletch/squaremap/trunk squaremap

Non è il più ricco di funzionalità, ma è eseguito da un singolo python, quindi è estremamente portatile.

alt text

6
Falmarri

Se hai guardato lo schermo di informazioni su Windirstat, ti ha mostrato che è basato su Kdirstat.

http://kdirstat.sourceforge.net/

6
DF1eCH

Puoi anche provare Gd Map , un altro strumento GUI basato su mappe ad albero.

4
Bruno

xdiskusage è molto flessibile, leggero con dipendenze molto snelle, facile da compilare ..

Mostra un albero da sinistra a destra che è possibile navigare con il mouse o i tasti freccia, ingrandire (fare clic o accedere), nascondere alcune parti per una migliore visualizzazione, cambiare l'ordinamento, il numero di colori ecc. Con i tasti o il menu di scelta rapida.

È così leggero che puoi usarlo su un collegamento SSH remoto con buone prestazioni. In questo caso, consiglio -q opzione da riga di comando per disabilitare la barra di avanzamento che appare mentre i file vengono camminati.

Puoi anche facoltativamente eseguire du in anticipo.

Una situazione è un filesystem remoto pieno o quasi pieno. Su quel sistema eseguire du -ak | gzip >log_of_disk_usage.txt.gz, recupera l'output ed esegui gzip -dc log_of_disk_usage.txt.gz | xdiskusage -aq localmente.
O anche ssh myremotesystem "cd /filesystem_near_full/ ; du -ak | gzip" > log_of_disk_usage.txt.gz per memorizzare il risultato localmente senza scrivere nulla in remoto.

xdiskusage non offre la possibilità di modificare il filesystem (come spostare nel cestino, ecc.) ma puoi copiare un percorso negli appunti e incollarlo in un file manager, terminale ecc.

xdiskusage screenshot

3

Recentemente ho usato lo strumento da riga di comando (CLI, non TUI): http://zevv.nl/play/code/philesight/

Produce un file PNG che è possibile visualizzare altrove. Ha anche uno script CGI.

Molto probabilmente non sei limitato alla modalità di testo sulla tua workstation locale, quindi dovrebbe essere appropriato.

2
OCTAGRAM

Duc ( https://duc.zevv.nl/ ) funzionerà dalla riga di comando.

Può essere installato e usato così in Debian 9:

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

Con questo otterrai un file chiamato duc.png nella directory corrente. Ora puoi copiare questo file su un altro computer compatibile con la GUI e sarà simile al seguente: duc.png

NOTA: Duc è il sostituto dello strumento menzionato da @OCTAGRAM nella sua risposta.

1
Jaime Hablutzel

Anche per vedere i file in una directory specifica ordinati per dimensione dopo aver trovato la directory usando du use:

ls -lrSh
1
Wodin