Imagen del disco duro comprimido muy grande


20

Acabo de hacer una imagen de un arranque dual recién instalado (Ubuntu y Windows) usando este comando (que he estado usando durante un tiempo para imágenes más pequeñas):

dd if=/dev/sda | gzip > /mnt/drive.img.gz

En este disco se utilizan menos de 60G de 500G. Sin embargo, ese archivo de imagen ahora es 409G grande.

¿Como es eso? ¿No debería gzip lograr comprimir todos esos ceros? Como dije, es un sistema recién instalado. No podría ser tan abarrotado.

Ahora no esperaba que el archivo fuera de 60G, pero 400G me parece muy grande.


13

Respuestas:


29

¿Como es eso? ¿No debería gzip lograr comprimir todos esos ceros?

Sí, si fueran ceros .

El espacio en disco no utilizado no significa que contenga ceros; significa que no se usa y puede contener cualquier cosa .

Hay programas que borran el espacio en disco no utilizado a ceros. Le sugiero que los use antes de hacer la imagen del disco. (No recuerdo ninguna improvisada, en Linux, yo sólo tiene que utilizar dd if=/dev/zero bs=1048576 of=somefilepara crear archivos que contienen sólo ceros, llenando cada sistema de archivos;. Luego eliminarlos antes de tomar la imagen también, prefiero xzmás gzip.)


¡Oh, gracias, ni siquiera pensé en lo que había en ese disco antes de instalarlo! Supongo que es más rápido descomprimir esa imagen ahora y hacerla más pequeña (para lo cual también parece haber soluciones). También consideraré usar xz. ¡Gracias!
chris137

12
Escribir 400G de ceros cada vez que desea hacer un clon no parece una buena idea en un SSD. La otra solución (usando un programa de clonación compatible con el sistema de archivos) parece mejor.
Federico Poloni

44
@FedericoPoloni: No, pero la imagen generada es una imagen de disco sin procesar perfecta . Las utilidades de clonación de disco usan varios formatos, por lo que necesita la utilidad para restaurar la imagen. No conozco (pero tampoco he verificado si) alguno que pueda generar una imagen en bruto mientras reemplaza los bloques no utilizados en la imagen con ceros; eso sería realmente útil. El uso dden Linux es la forma más sencilla y fácil de solucionar el problema del tamaño de la imagen sin procesar, y como algo excepcional, está bien incluso en un SSD.
Nominal Animal

1
@FedericoPoloni: Sí, las imágenes comprimidas con gzip y xz se pueden montar con nbdkit . (No estoy realmente preocupado por los formatos, si están abiertos y son compatibles con más de una utilidad; solo me preocupa que las utilidades no se mantengan y tengan errores en los nuevos sistemas. Me encantaría usar SquashFS en lugar de xz o gzip, por ejemplo.)
Nominal Animal

3
@Gilles El espacio recortado, cuando se lee, no garantiza que tenga ceros. Algunos controladores dan eso, otros no.
deviantfan

14

Para copias de seguridad de particiones individuales, puede usar partclone en su lugar.

Partclone lee el sistema de archivos para ver dónde se almacenan los archivos y solo realiza una copia de seguridad de esas partes de la partición.


3
Además, Clonezilla es una excelente GUI para hacer esto.
Federico Poloni

partimage es una herramienta excelente y ya se encuentra en muchas distribuciones de Linux / CD en vivo.
Criggie

Otra herramienta en este sentido es fsarchiver.
Iwillnotexist Idonotexist
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.