Come posso trovare le directory più grandi in unix / Ubuntu?


34

C'è un modo in Unix per vedere le più grandi directory su disco?

Ho bisogno di sapere perché ho quasi finito con lo spazio sul server e non so dove venga utilizzata la maggior parte dello spazio ..

Grazie



Eccone uno buono: unix.stackexchange.com/questions/4681/… - dice di usare du | sort -hquindi usa tail- oppure, puoi usare sort -rhcosì i più grandi sono all'inizio e puoi usarli moreper vederlo.
Funziona

Risposte:


54

Prova: du --max-depth=7 /* | sort -n- non ti dirà solo le directory e ci saranno duplicati, ma elencherà tutto a 7 livelli di profondità e li ordinerà per ordine di dimensione.


13
7 livelli contemporaneamente potrebbero essere travolgenti. Vorrei iniziare con --max-depth=0(o meglio, usare --summarize/ -s), e poi passare a mano nelle directory più grandi.
Steven lunedì

Un buon punto, ho appena scelto quel numero, dato che in genere finisco per andare prima di trovare qualcosa di utile.
James L

3
che ne dite du -cs * | sort -ndi una panoramica di quale directory è più grande?
Lorenzog,

Preferisco:du -ch | sort -nr | head -10
Sklavit

47

Il mio strumento preferito per questa attività è ncdu .

schermata di esempio ncdu


3
Bello. Funziona praticamente nel modo in cui lo farei a mano (con du | sort), ma con MODO meno digitando.
Steven lunedì

È molto meglio basta installare ncdu e digitare il comando ncdu nella directory che si desidera analizzare, funziona molto velocemente.
Jamol,

6

Ti suggerisco di usare baobab , che ti darà una panoramica grafica dell'utilizzo del tuo disco. Può anche essere usato per la cartella remota (tramite ssh, ftp, ...) per scansionare l'utilizzo del disco su un server remoto per esempio.

Modifica: se desideri analizzare l'utilizzo del disco direttamente sul server con l'accesso alla shell e non da remoto, e desideri uno strumento più conveniente di du, puoi anche provare con durep che genererà un rapporto sull'utilizzo del disco con grafici a barre.


bello, ma ho solo l'accesso alla shell sul mio VPS (RAM bassa)
aneuryzm

3

Di solito uso qualcosa del genere:

du -ch / | sort

Puoi applicare una limitazione di profondità usando --max-depth = se non vuoi vedere oltre un certo livello dal tuo obiettivo, in questo modo:

du -ch --max-depth=4 /

0

Prova df& du -sh /. E ricorsivamente du -sh. Non è la soluzione migliore però.


0

Qualcosa di simile a

sudo du / | ordina -n

Ti darà una risposta rapida (le ultime voci sono file / directory più grandi)


2
Definisci veloce? Nella mia esperienza, ciò richiede in genere almeno 5-10 minuti.
James L

0

# cd /; du -shb | sort -nr > /root/home/disk-space-report.txt


0

Uso sempre la sintassi come

du -sm --max-depth=4 /path/i/want/to/drill | sort -nr | head -n 20.

i parametri max-depth e head possono ovviamente variare, ma quanto sopra elencerebbe 20 directory più grandi.


0

Sono regolarmente in esecuzione du -dak > du-dak.outnella parte superiore di ogni file system. Quindi, posso ottenere una visualizzazione grafica con xdu < du-dak.out. Questo può essere fatto in remoto dopo aver trasferito il file du-dak.out sulla rete se si ha accesso solo al testo.

http://sd.wareonearth.com/~phil/xdu/

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.