Al crear una partición de respaldo de 250GiB para mis datos, he notado muchas discrepancias entre el tamaño de partición informado y el espacio libre en Nautilus, gParted, df, tune2fs, etc.
Al principio pensé que era una confusión GiB / GB. No fue .
Entonces pensé que podrían ser los bloques reservados de ext4. No fue .
Estoy completamente perplejo. Aquí hay algunas imágenes. Aquí están los pasos:
- Primero, NTFS. 524288000 sectores x 512 bytes / sector = 268435456000 bytes = 268.4 GB = 250 GiB.
Nautilus dice " Capacidad total: 250.0 GB " (aunque en realidad es GiB, no GB). Aparte de ese pequeño etiquetado incorrecto, hasta ahora, todo bien
- Ahora, la misma partición, formateada como ext4 con gparted:
Los sectores Primero, Último y Total son iguales. Es la misma partición de 250GiB. El tamaño utilizado es 4.11GiB (¿quizás bloques reservados?)
No Parece que los bloques reservados son 12.7 GiB (~ 5%. ¡Ay! ). Pero ... ¿por qué la capacidad total ahora es de solo 246.1 GiB? . Esa diferencia (más o menos) coincide con el 4.11 GiB informado por gparted. Pero ... si no es de bloques reservados, ¿qué es? ¿Y por qué gparted no informó que 12.7GiB de espacio usado?
$ df -h /dev/sda5
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 247G 188M 234G 1% /media/BACKUP
df
coincide con Nautilus en el espacio libre reportado. Pero ... ¿solo 188M usados? ¿No debería ser ~ 12GB? Y la capacidad total todavía está mal. Entonces corrí tune2fs
a buscar algunas pistas. (se omite la salida irrelevante)
$ sudo tune2fs -l /dev/sda5
tune2fs 1.41.12 (17-May-2010)
Filesystem volume name: BACKUP
Filesystem UUID: 613d592e-47f5-4206-96a7-210090d340ef
Filesystem features: has_journal ext_attr resize_inode dir_index filetype extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags: signed_directory_hash
Filesystem state: clean
Filesystem OS type: Linux
Block count: 65536000
Reserved block count: 3276800
Free blocks: 64459851
First block: 0
Block size: 4096
65536000 bloques totales * 4096 bytes / bloque = 268435456000 bytes = 268.4 GB = 250 GiB. Coincide con gparted.
3276800 bloques reservados = 13421772800 bytes = 13.4 GB = 12.5 GiB. (De nuevo, más o menos) coincide con Nautilus.
64459851 bloques libres = 264027549696 bytes = 264.0 GB = 245.9 GiB. ¿Por qué? ¿No debería ser 250-12.5 = 237.5 (o 250- (12.5 + 4.11) = ~ 233)?
Eliminar bloques reservados:
$ sudo tune2fs -m 0 /dev/sda5
tune2fs 1.41.12 (17-May-2010)
Setting reserved blocks percentage to 0% (0 blocks)
$ sudo tune2fs -l /dev/sda5
tune2fs 1.41.12 (17-May-2010)
Filesystem volume name: BACKUP
Filesystem UUID: 613d592e-47f5-4206-96a7-210090d340ef
Filesystem features: has_journal ext_attr resize_inode dir_index filetype extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags: signed_directory_hash
Filesystem state: clean
Filesystem OS type: Linux
Block count: 65536000
Reserved block count: 0
Free blocks: 64459851
Block size: 4096
Como se esperaba, el mismo recuento de bloques, 0 bloques reservados, pero ... ¿los mismos bloques libres ? ¿Acabo de liberar 12.5 GiB?
$ df -h /dev/sda5
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 247G 188M 246G 1% /media/BACKUP
Parece que lo hice El espacio disponible aumentó de 233 a 245.9 GiB. ¡a gparted no le importó en absoluto, mostrando exactamente la misma información! (inútil publicar una captura de pantalla idéntica)
¡Qué gran desastre!
Traté de documentarlo lo mejor que pude ... Entonces, ¿alguien puede darme alguna pista de lo que está pasando aquí?
- ¿Cuáles son los misteriosos 4.11 GiB que faltan en NTFS -> formato ext4?
- ¿Por qué hay tantas discrepancias entre gparted, Nautilus, tune2fs, df?
- ¿Qué hay de malo en mis matemáticas? (las preguntas en negrita dispersaron esta publicación)
Cualquier ayuda es apreciada. Si bien no puedo entender lo que está sucediendo, estoy considerando seriamente renunciar a ext4 a favor de NTFS para todo menos mi / partición.
¡Gracias!
fuente
Respuestas:
Hay algunas cosas pasando aquí. gparted informa el espacio real utilizado / libre. El núcleo reduce el recuento disponible por el espacio reservado. Después de eliminar el espacio reservado, el conteo gratuito no cambió porque los bloques reservados ya estaban libres; es solo que los usuarios no root no pueden invadir ese espacio para evitar que causen problemas al llenar el disco. Los números de los gnomos son un poco escamosos debido a un error . En lugar de informar el espacio utilizado que informa el núcleo (y muestra df), lo calcula restando el espacio libre del total. Esto hace que muestre el espacio reservado como se usa.
Los 4 GB que faltan realmente se utilizan son los gastos generales de fs para ext4. NTFS solo asigna inicialmente una pequeña cantidad de espacio para la MFT y la aumenta según sea necesario. Sin embargo, la serie ext de sistemas de archivos asigna espacio para la tabla de inodo (equivalente aproximado de la MFT) en el momento del formato y no puede crecer. El espacio que falta en el espacio total informado es la tabla de inodo. El bit restante del espacio utilizado proviene del diario (generalmente 128 mb) y cambia el tamaño de los inodos.
fuente
df
incluso con sudo, muestra la capacidad total (247 GB) y el espacio utilizado (188 MB) como Nautilus. Entonces, si es un error, no es solo un gnomo.stat -f /media/BACKUP
.En primer lugar, los bloques reservados no son bloques utilizados para la gestión interna del sistema de archivos.
Los bloques reservados están simplemente reservados para
root
asegurar que los servicios que usan archivos en esa partición no puedan ser descartados por un usuario que no sea administrador llenando todo el espacio.Incluso sin bloques reservados (
-m 0
) siempre hay una parte del espacio utilizado para la administración interna del sistema de archivos, no puedo decir cuánto, no tengo un conocimiento tan profundo.Además, Gparted se ejecuta como
root
, por lo que ve los bloques reservados como gratuitos. Nautilus , ejecutado como usuario, los ve como no gratuitos.Ok, la respuesta de @psusi es muy clara, no tengo nada que agregar.
fuente
Intente reducir el tamaño de la partición en unos pocos megabytes con gparted, luego aumente nuevamente a su tamaño original. Esto puede hacer que otras aplicaciones lean los tamaños correctamente. ¡Recientemente corregí un error de 50 Gb de esta manera!
fuente