Ratio: 0 / 5

Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado
 

Sobretodo en máquinas virtuales, cada tanto es conveniente sobreescribir el espacio libre con ceros, para comprimir eficientemente los discos virtuales para que se nos achiquen los backups.

En mi caso, tengo una partición montada en /datos


root@vubuntu-samba:~# mount
...
...
/dev/sda3 on /datos type ext4 (rw)
...
...


En esta partición se crean y borrar muchos archivos temporales, por lo que el disco virtual crece, aunque el espacio ocupado en realidad es mucho menor. Si compacto el disco virtual, se achica el tamaño, pero no siempre de manera eficiente.

El método es el siguiente:

Nos logueamos en la máquina virtual y nos posicionamos en la partición que queremos comprimir


root@vubuntu-samba:~# cd /datos

Obtenemos la cantidad de bloques libres;


root@vubuntu-samba:/samba# df
S.ficheros 1K-bloques Usado Disponible Uso% Montado en
/dev/sda3 152677028 83055284 61977792 58% /
udev 603524 4 603520 1% /dev
tmpfs 244320 876 243444 1% /run
none 5120 0 5120 0% /run/lock
none 610792 0 610792 0% /run/shm
/dev/sda1 482922 36966 421022 9% /boot
/dev/sdb1 157078424 31510792 117703416 22% /samba2


En nuestro caso, /dev/sda3 tiene 619777792 bloques libres.

Vamos a copiar CASI la misma cantidad de bloques de 1 mega desde /dev/zero a un archivo de texto


root@vubuntu-samba:/samba# dd if=/dev/zero of=./borrar.txt bs=1M count=61977750

Una vez que ejecutamos este comando ... no muestra información hasta que termine ... o que obtengamos algún tipo de error.

Si somos impacientes y queremos ver algún tipo de progreso, en otra terminal corremos lo siquiente:


root@vubuntu-samba:~$ pgrep -l '^dd$''
5682 dd
root@vubuntu-samba:~$ kill -USR1 5682

Apenas se detecta la señal USR1, dd saca por STDERR las estadísticas actuales:


13402+0 registros leídos
13402+0 registros escritos
14053015552 bytes (14 GB) copiados, 280,048 s, 50,2 MB/s

Si queremos tener más frecuencia de actualización:


root@vubuntu-samba:~$ watch kill -USR1 5682

Nos mostrará algo similar a:


20101+0 registros leídos
20101+0 registros escritos
21077426176 bytes (21 GB) copiados, 421,877 s, 50,0 MB/s
20200+0 registros leídos
20200+0 registros escritos
21181235200 bytes (21 GB) copiados, 423,919 s, 50,0 MB/s 20296+0
registros leídos 20296+0
registros escritos 21281898496 bytes (21 GB) copiados, 425,937 s, 50,0 MB/s
20395+0 registros leídos 20395+0
registros escritos
21385707520 bytes (21 GB) copiados, 428,021 s, 50,0 MB/s
20491+0 registros leídos 20491+0
registros escritos 21486370816 bytes (21 GB) copiados, 430,043 s, 50,0 MB/s
20585+0 registros leídos 20585+0
registros escritos
21584936960 bytes (22 GB) copiados, 432,091 s, 50,0 MB/s 20681+0
registros leídos 20681+0
registros escritos 21685600256 bytes (22 GB) copiados, 434,132 s, 50,0 MB/s

Cuando termine, simplemente borrar el archivo borrar.txt

Finalmente, en el equipo host para compactar el disco virtual en cuestión


VBoxManage modifyhd /paso/al/disco/a/compactar --compact

 


FacebookMySpaceTwitterDiggDeliciousStumbleuponGoogle BookmarksRedditNewsvineTechnoratiLinkedinRSS FeedPinterest
Pin It