¿Existe una herramienta CLI de Linux para determinar el espacio "usado" de una partición? (como separados)

¿Existe una herramienta CLI de Linux para determinar el espacio "usado" de una partición? (como separados)

Estoy reduciendo una partición de tarjeta SD de Linux usando la increíble guía de AOakley. Estoy intentando automatizarlo, pero parece que no hay ninguna herramienta de línea de comandos para determinar la cantidad de bytes que se utilizan en una partición.

Por ejemplo, gparted me dice que el espacio utilizado es 1,88 GB de 6,99 GB (nota, estoy usando /dev/loop0 que está montado en la segunda partición de /dev/sdb):

dfEstá Mal:

% df /dev/loop0
Filesystem  ... Use%
udev        ... 0%

...y fdiskno partedimprimir el espacio usado.

¿Qué puedo usar desde la línea de comandos para determinar el espacio utilizado en una partición como gpartedlo hace?

RESPUESTA: Resumen a continuación: La partición es ext4la que me permite usar dumpe2fsy extraer: free blocks, block count(total), y block sizeque se puede combinar para que coincida exactamente gparted. Resulta que resize2fsmaneja la fragmentación durante la contracción. Consulte la página de manual para ext4obtener más información (¡aunque el editor de la página de manual está un poco amargado con GiB vs. GB! :)

Respuesta1

dfes casi la herramienta adecuada, pero debe consultar el punto de montaje (o cualquier archivo a continuación) que pertenece al sistema de archivos que desea examinar, no al nodo del dispositivo. El nodo que utilizó, /dev/loop0es un archivo especial que pertenece al udevsistema de archivos virtual; por lo tanto tienes udev.

Monte /dev/loop0(o /dev/sdb2, no estoy seguro de por qué es necesario /dev/loop0) en algún lugar (puede ser romontar) e invoque df /the/mountpoint. Luego dfle dirá qué informa el sistema de archivos sobre sí mismo.

dije " dfescasila herramienta adecuada" porque no hay garantía de que pueda reducir el sistema de archivos (y luego la partición) al tamaño informado por la herramienta. Qué dfimpresiones puede ser su primera estimación (o más bien cero).

Necesita diferentes herramientas para cambiar el tamaño de diferentes sistemas de campo. En un mundo perfecto, dicha herramienta (o alguna herramienta que la acompañe) es capaz de indicarle el tamaño mínimo posible, o al menos el tamaño mínimo para el cual el cambio de tamaño tendrá éxito con seguridad. En realidad puedes encontrar esto:

Errores conocidos
El tamaño mínimo del sistema de archivos estimado por resize2fspuede ser incorrecto, especialmente para sistemas de archivos con tamaños de bloque de 1k y 2k.

(fuente)

gpartedutiliza herramientas específicas del sistema de archivos. Lo ejecuté stracey no vi evidencia de que lo use df. Yo vi btrfs filesystem show …, dumpe2fs …, …

Resumen:

  • Lo usaste dfde manera incorrecta.
  • De todos modos, es mejor utilizar una herramienta específica para el sistema de archivos; gpartedhace. No puedo decirte qué herramienta deberías usar porque no has especificado el sistema de archivos en cuestión.

información relacionada