A obtenção de imagens de disco menores geralmente é feita por meio da cópia de zero blocos desatados do sistema de arquivos inicial na imagem. O conceito é chamado escasso espaço em arquivos ou puching buracos em arquivos, e seu sistema de arquivo host tem a apoiá-lo. um pouco de linha de comando, mas tente o seguinte:
sudo apt-get install virt-manager qemu-utils
E então, uma vez instalado, você pode usar:
qemu-img convert -f raw -O raw /dev/sdX /home/<user>/Ubuntu.img
Isso criará uma imagem esparsa (zeros no arquivo não estão gravados) do seu disco. onde -f = formato, -O formato de saída. sdX o disco (também pode usar partições). O programa possui recursos avançados, como instantâneos e diferentes formatos de saída (vdi, vmdk, etc). Seu local em que você salva a imagem precisa suportar arquivos esparsos , caso contrário, o tamanho será tão grande quanto os zeros na partição serão gravados no disco. E para aproveitar ao máximo, execute um programa como o sfill
ou zerofree
encontrado no apt na partição, porque o espaço livre nem sempre significa espaço zero e você deseja maximizar a quantidade de espaço zero no sistema de arquivos.
Pontos ninja bônus. Como o linux considera os discos como "arquivos", você também pode usar o cp simples, com a condição de que sua partição de saída onde você estaciona o arquivo conheça arquivos esparsos.
sudo cp --sparse=always /dev/sdX /home/<user>/Ubuntu.img
Que criará uma cópia bruta por meio do cp ..
Exemplos de sistemas de arquivos que oferecem suporte a esparsos: ext4, btrfs, xfs, ntfs (o ntfs-3g, no entanto, pode não permitir gravações esparsas).
Exemplos de sistemas de arquivos que não: fat32.