"Jugué con cron una vez, por lo que puede haber consumido mi memoria masiva, pero en realidad no tengo idea". ¿Ninguna idea, dices? nunca lo hubiera adivinado. :)
su - cd / du -s ./* | sort -n
-
du
muestra el uso del disco, en bloques (1 bloque =0,5 kilobytes, en todos los casos que le interesen). -
-s
significa "resumen", por lo que da solo un total para cada argumento "./*" siendo el argumento. -
conectándolo a
sort -n
significa ordenar numéricamente. Los números más grandes en la parte inferior. -
Por lo tanto, obtendrá una lista de directorios con los que ocupan más espacio en la parte inferior.
Si eso no es suficiente ayuda, digamos que obtienes:
60380 ./root 142468 ./etc 537716 ./var 627264 ./lib 5757600 ./usr 28859472 ./home
-
y ves que ./home es el cerdito más grande, ok,
cd
en /home, y haz lo mismodu -s | sort -n
. Entonces ves quién en /home está ocupando espacio. (en un sistema de un solo usuario, bueno, probablemente seas tú). -
Luego haga cd allí y haga
du -s | sort -n
de nuevo.
Sigue haciendo esto hasta que encuentres al culpable. Cuando encuentres al culpable, puedes decir, oh sí... esa es mi colección de representaciones de alta resolución de Romulan Birds of Prey para mi juego de rol de Star Trek que estoy construyendo, así que sí, por supuesto que requiere mucho de espacio, o puede decir, por supuesto que ocupa mucho espacio, así que vamos a rm -fr ese chico malo.
Palabras mágicas para recordar:
du -s | sort -n
KDirStat es otra opción que lo ayudará a identificar archivos y directorios grandes.
He usado mucho el clon de Windows WinDirStat y es una herramienta increíble.
Herramienta Linux ncdu
es muy conveniente en mi opinión. Es como du
interactivo .
Algunas funciones
- Interfaz de texto (
ncurses
); funciona a través de SSH, no se necesita Xserver. - Todavía puedes moverte dentro del árbol de directorios para encontrar directorios/archivos grandes rápidamente.
- Puede eliminar directorios/archivos desde dentro del programa.
Captura de pantalla
Bueno, algo así. No tiene sentido pegar la imagen, el texto será suficiente:
ncdu 1.10 ~ Use the arrow keys to navigate, press ? for help
--- / --------------------------------------------------------------------------
6,7GiB [##########] /usr
3,4GiB [##### ] /var
553,1MiB [ ] /lib
529,1MiB [ ] /opt
35,1MiB [ ] /etc
32,5MiB [ ] /home_old
16,4MiB [ ] /sbin
9,9MiB [ ] /bin
8,2MiB┌───ncdu help─────────────────1:Keys───2:Format───3:About──┐
3,8MiB│ │
1,3MiB│ up, k Move cursor up │
500,0KiB│ down, j Move cursor down │
124,0KiB│ right/enter Open selected directory │
12,0KiB│ left, <, h Open parent directory │
8,0KiB│ n Sort by name (ascending/descending) │
@ 4,0KiB│ s Sort by size (ascending/descending) │
@ 4,0KiB│ C Sort by items (ascending/descending) │
@ 4,0KiB│ d Delete selected file or directory │
0,0 B│ t Toggle dirs before files when sorting │
> 0,0 B│ g Show percentage and/or graph │
e 0,0 B│ -- more -- │
> 0,0 B│ Press q to continue │
> 0,0 B└──────────────────────────────────────────────────────────┘
> 0,0 B [ ] /home
> 0,0 B [ ] /dev
e 0,0 B [ ] /cpusets
e 0,0 B [ ] /cdrom
> 0,0 B [ ] /boot
Total disk usage: 11,3GiB Apparent size: 11,1GiB Items: 289029
Uso:
ncdu -x /foo/bar/mountpoint
Usa sudo
(¡y precaución!) cuando sea necesario. El -x
la opción es importante, hace ncdu
permanecer dentro del sistema de archivos único (du
tiene la misma opción). En el ejemplo (arriba) mi /home
está en una partición diferente a /
donde ncdu
comenzó, por lo tanto no cuenta – gracias a -x
cambiar exactamente.