¿Cómo analizar el uso del disco en la línea de comandos de Linux?

99

duy dfson agradables, pero no sé cómo filtrar los datos que proporcionan como lo hago con SequoiaView . Me gustaría saber cuáles son las carpetas más grandes y los archivos más grandes de un vistazo.

Jader Dias
fuente
¿Has verdad ncdu?
SDsolar

Respuestas:

141

También es posible que desee probar el uso del disco NCurses aka ncdu.

Úselo como ncdu -x -qsi lo invoca de forma remota (por ejemplo, a través de ssh) y de ncdu -xotra manera.

ncdu 1.6 ~ Use the arrow keys to navigate, press ? for help
    --- /home/geek -----------------------------------------------------------------
       27.6MiB  /qm test 1 rework
      312.0kiB  /sidebar
       88.0kiB  /rackerhacker-MySQLTuner-perl-6add618
        8.0kiB  /.w3m
        4.0kiB  /.cache
    e   4.0kiB  /.ssh
      160.0kiB   ng.tar.gz
       76.0kiB   plowshare_1~svn1673-1_all.deb
        4.0kiB   .bashrc
        4.0kiB   .bash_history
        4.0kiB   .profile
        4.0kiB   .htoprc
        4.0kiB   .bash_logout
        0.0  B   .lesshst

Esto también está disponible en Mac OS X.

Los siguientes indicadores a la línea de comando pueden ser útiles:

-q Quiet mode, doesn't update the screen 10 times a second
   while scanning, reduces network bandwidth used

-x Don't cross filesystem borders (don't descend into a
   directory which is a mounted disk)

Gracias a Sorin Sbarnea.

heinrich5991
fuente
1
Disponible también en OS X, a través de brew. Puede ser una buena idea llamarlo usandoncdu -x -q
sorin
1
¡increíble! la mejor opción para mí fue ncdu -q, incluso en ssh.
Valter Silva
46

Use alguna combinación de comandos y opciones:

du --max-depth=1 2> /dev/null | sort -n -r | head -n20

para ver solo los pocos más grandes. Si desea usarlo mucho, luego agréguelo a un alias, por ejemplo, en bash agregando a ~ / .bashrc

alias largest='du --max-depth=1 2> /dev/null | sort -n -r | head -n20'
Jaap Eldering
fuente
2
Para ver los pocos más grandes , necesita la -ropción ordenar.
RedGrittyBrick
1
Envié la sugerencia de @RedGrittyBrick y una redirección de error /dev/nullcomo una edición sujeta a aprobación.
Jader Dias
También usaría la du -Hopción, pero rompe el sortcomportamiento
Jader Dias
2
@jumpnett: redirige standard error(en este caso al agujero negro que es /dev/null).
Jaap Eldering
3
Puede usar sort -hpara ordenar valores con sufijos legibles por humanos.
allo
4

Probablemente quieras xdu.

du -ax | xdu -n

También está el Filelight más sofisticado basado en KDE .

Osito de peluche
fuente
3

Yo suelo usar

du -hsc * | sort -h

Qué significa cada opción para du:

  • h: muestra tamaños en formato legible para humanos (1K, 1M, 1G, ...)
  • s: resumir: muestra solo un total para cada argumento
  • c: también muestra un gran total

La -hopción en sorthace que entienda el -hformato (legible por humanos) en du. Esta opción es relativamente nueva sort, por lo que tal vez su sistema no lo admita y lo obligue a usarlo du -sc | sort -n.

Si lo hace en una máquina remota y el proceso lleva mucho tiempo, probablemente desee ejecutar este proceso en segundo plano o dentro de screenalgo similar para evitar una pérdida de conexión.

emi
fuente
3

Me gustaría recomendar dutree , que ofrece una visualización jerárquica.

Puede seleccionar más o menos niveles de detalle y excluir rutas para un mejor control de la visualización. También puedes comparar diferentes caminos.

ingrese la descripción de la imagen aquí

Se implementa en Rust, rápido y eficiente.

$ dutree -h
Usage: dutree [options] <path> [<path>..]

Options:
    -d, --depth [DEPTH] show directories up to depth N (def 1)
    -a, --aggr [N[KMG]] aggregate smaller than N B/KiB/MiB/GiB (def 1M)
    -s, --summary       equivalent to -da, or -d1 -a1M
    -u, --usage         report real disk usage instead of file size
    -b, --bytes         print sizes in bytes
    -f, --files-only    skip directories for a fast local overview
    -x, --exclude NAME  exclude matching files or directories
    -H, --no-hidden     exclude hidden files
    -A, --ascii         ASCII characters only, no colors
    -h, --help          show help
    -v, --version       print version number
nachoparker
fuente
1
du -h 2> /dev/null | sort -hr | head -n20

du -h da una estimación de la lista legible por humanos del espacio en disco con un total de
2> / dev / null suprime cualquier error como acceso de lectura denegado
sort -hr ordena el tamaño del archivo legible por humanos en orden inverso
head -n20 reduce la lista a 20

Tenga en cuenta que el acceso de lectura a directorios y archivos denegados están excluidos

DB
fuente