Con el comando df, es fácil ver cuando un disco se está quedando sin espacio. El siguiente problema para el administrador del sistema es saber qué hacer cuando eso sucede.
Otro comando útil para ayudarte es el comando du. El comando du muestra el uso del disco para un directorio específico (por defecto, el directorio actual). Esta es una forma rápida de determinar si tiene algún acaparamiento de discos obvio en el sistema.
De forma predeterminada, el comando du muestra todos los archivos, directorios y subdirectorios del directorio actual, y muestra cuántos bloques de disco ocupa cada archivo o directorio. Para un directorio de tamaño estándar, esto puede ser una gran lista. Aquí hay una lista parcial del uso del comando du:
$ du 484 ./.gstreamer-0.10 8 ./Templates 8 ./Download 8 ./.ccache/7/0 24 ./.ccache/7 368 ./.ccache/a/
El número a la izquierda de cada línea es el número de bloques de disco que ocupa cada archivo o directorio. Tenga en cuenta que la lista comienza en la parte inferior de un directorio y continúa hacia arriba a través de los archivos y subdirectorios contenidos en el directorio.
Si encuentra el siguiente error mientras ejecuta el comando du:
du: command not found
puede intentar instalar el siguiente paquete según su elección de distribución:
Distribución | Comando |
---|---|
OS X | instalación de preparación de coreutils |
Debian | apt-get install coreutils |
Ubuntu | apt-get install coreutils |
Alpino | apk agregar coreutils |
Arco Linux | pacman -S coreutils |
Kali Linux | apt-get install coreutils |
Cent OS | yum instalar coreutils |
Fedora | dnf instalar coreutils |
Raspbian | apt-get install coreutils |
Ejemplos de comandos du
1. Para obtener el uso del espacio para todos:
# du -a
2. Para imprimir el tamaño aparente en lugar del uso del disco:
# du --apparent-size
3. Para informar el uso en tamaño de bloque espaciado:
# du -B=SIZZE # du --block-size=1024
4. Para imprimir el uso en tamaño aparente de 1:
# du -b # du --bytes
5. Para generar un total general:
# du -c # du --total
6. Para desreferenciar solo los enlaces simbólicos que se enumeran en la línea de comando:
# du -D # du --dereference-args
7. Para imprimir tamaños en formato legible por humanos:
# du -h
8. Para imprimir tamaños en formato legible por humanos con potencias de 1000 no 1024:
# du --si
9. Para imprimir el uso con tamaño de bloque como 1024, es decir, 1k:
# du -k
10. Para contar los tamaños muchas veces si está vinculado:
# du -l # du --count-links
11. Para imprimir el uso con tamaño de bloque como 1024*1024=1048576, es decir, 1M:
# du -m
12. Para desreferenciar todos los enlaces simbólicos:
# du -L # du --dereference
13. Para no seguir ningún enlace simbólico (este es el predeterminado):
# du -P # du --no-dereference
14. Para finalizar cada línea de salida con 0 bytes en lugar de nueva línea:
# du -0 # du --null
15. Para no incluir el tamaño de los subdirectorios:
# du -S # du --separate-dirs
16. Para mostrar solo un total para cada argumento:
# du -x # du --one-file-system
17. Para excluir archivos que coincidan con cualquier patrón en ARCHIVO:
# du -X # du --exclude-from=FILE
18. Para excluir archivos que coincidan con PATRÓN:
# du --exclude=PATTERN
19. Para imprimir el total de un directorio:
# du --max-depth=N
20. Para mostrar la hora de la última modificación de cualquier archivo en el directorio:
# du --time
21. Para mostrar la hora como WORD en lugar de la hora de modificación:atime, access, use, ctime o status:
# du --time=WORD
22. Para mostrar tiempos usando el estilo ESTILO:
# du --time-style=STYLE
23. Para obtener ayuda:
# du --help
24. Para obtener la versión:
# du --version
Pensamientos finales
El comando du por sí solo puede ser algo inútil. Es bueno poder ver cuánto espacio en disco ocupa cada archivo y directorio individual, pero puede no tener sentido cuando tienes que leer páginas y páginas de información antes de encontrar lo que estás buscando.
Puede usar los siguientes parámetros de la línea de comandos con el comando du para hacer las cosas un poco más legibles:
- -c :Produce un total general de todos los archivos enumerados.
- -h :Tamaños de impresión en formato legible por humanos, utilizando K para kilobyte, M para megabyte y G para gigabyte.
- -s :Resume cada argumento.