Tengo varios discos duros externos e internos que uso en un sistema Linux. Sólo tengo sistemas Linux, por lo que usar un sistema de archivos Linux tendría sentido, ¿verdad? Sin embargo, actualmente estoy usando NTFS en todas partes, porque me brinda el mayor espacio utilizable entre los discos duros.
Sin embargo, ahora me gustaría cambiar a sistemas de archivos Linux, principalmente debido a los permisos y la compatibilidad (por ejemplo, no puedo cambiar el tamaño de mi partición NTFS cifrada con LUKS en Linux, me sigue diciendo que haga chkdsk en Windows).
Sin embargo, cuando formateé esos discos duros, probé varios sistemas de archivos diferentes y cada sistema de archivos de Linux, incluso ext2, que hasta donde yo sé no tiene registro en diario, usó mucho espacio por sí mismo. No recuerdo los valores exactos, pero NTFS me dio más de 100 GB en un disco duro de 2 TB, que es mucho.
Entonces mi pregunta es: ¿Hay alguna manera de hacer que los sistemas de archivos ext utilicen menos espacio? ¿O hay otro sistema de archivos (he probado ext2, ext3, ext4, NTFS y vfat; ninguno de ellos se acercó al espacio utilizable que me ofreció NTFS) con soporte perfecto para Linux y gran espacio utilizable?
Me encantaría saber cómo y por qué los sistemas de archivos (especialmente ext2, que no tienen registro en diario) usan mucho más espacio que NTFS y no sé dónde más preguntar. Preferiría principalmente una forma de usar ext4 sin llevar un diario y cualquier otra cosa que ocupe tanto espacio, si es posible.
Respuesta1
De forma predeterminada, ext2 y sus sucesores reservan el 5% del sistema de archivos para uso del usuario root. Esto reduce la fragmentación y hace que sea menos probable que el administrador o cualquier demonio propiedad de root se quede sin espacio para trabajar.
Estos bloques reservados evitan que los programas que no se ejecutan como root llenen su disco. Si estas consideraciones justifican la pérdida de capacidad depende de para qué se utilice el sistema de archivos.
La cantidad del 5% se fijó en la década de 1980, cuando los discos eran mucho más pequeños, pero se dejó como está. Hoy en día, el 1% probablemente sea suficiente para la estabilidad del sistema.
La reserva se puede cambiar usando la -m
opción del tune2fs
comando:
tune2fs -m 0 /dev/sda1
Esto establecerá el porcentaje de bloques reservados en 0% (0 bloques).
Para obtener el valor actual (entre otros), use el comando:
tune2fs -l <device>
Respuesta2
Otro punto del que aún no se ha hablado es la cantidad de inodos que reserva en su sistema de archivos.
De forma predeterminada, mkfs crea una cantidad de inodos que deberían permitir colocar una gran cantidad de archivos muy pequeños en su sistema de archivos. Si sabe que los archivos serán muy grandes y solo colocará una pequeña cantidad de archivos en el FS, puede reducir la cantidad de inodos.
¡Cuidarse! Este número (resp. la relación entre el espacio y el número de inodos) solo se puede establecer en el momento de la creación del sistema de archivos. Incluso cuando se amplía el FS, la proporción sigue siendo la misma.
Respuesta3
Si los datos que desea almacenar en él son comprimibles, btrfs montado con compress=zstd
(o compress-force=zstd
) probablemente usaría mucho menos espacio en disco que ext*
- esto hará que btrfs comprima de forma transparente sus datos antes de escribirlos en el disco y los descomprima de forma transparente al volver a leerlos. Además, ext4 preasigna todos los inodos en la creación del sistema de archivos, btrfs los crea según sea necesario, supongo que eso también podría ahorrar algo de espacio.