Começo com a imagem de nuvem Debian mais recente e faço uma cópia para minha VM.
❯ cp debian-12-nocloud-arm64.qcow2 kthw-jumpbox
❯ qemu-img info kthw-jumpbox
image: kthw-jumpbox
file format: qcow2
virtual size: 2 GiB (2147483648 bytes)
disk size: 381 MiB
cluster_size: 65536
Format specific information:
compat: 1.1
compression type: zlib
lazy refcounts: false
refcount bits: 16
corrupt: false
extended l2: false
Child node '/file':
filename: kthw-jumpbox
protocol type: file
file length: 381 MiB (399179776 bytes)
disk size: 381 MiB
Em seguida, redimensione-o para 15G:
❯ qemu-img resize kthw-jumpbox 15G
Image resized.
❯ qemu-img info kthw-jumpbox
image: kthw-jumpbox
file format: qcow2
virtual size: 15 GiB (16106127360 bytes)
disk size: 381 MiB
cluster_size: 65536
Format specific information:
compat: 1.1
compression type: zlib
lazy refcounts: false
refcount bits: 16
corrupt: false
extended l2: false
Child node '/file':
filename: kthw-jumpbox
protocol type: file
file length: 381 MiB (399180288 bytes)
disk size: 381 MiB
Portanto, podemos ver que o tamanho virtual é 15GiB
.
Eu faço alguns trabalhos configurando esta VM. Mas quando copio um arquivo, recebo um erro:
# cp downloads/kubectl /usr/local/bin/
cp: error copying 'downloads/kubectl' to '/usr/local/bin/kubectl': No space left
on device
E verificar df
mostra que está 100% cheio com 2G de uso:
# df -h
Filesystem Size Used Avail Use% Mounted on
udev 186M 0 186M 0% /dev
tmpfs 48M 696K 47M 2% /run
/dev/vda1 1.9G 1.8G 0 100% /
tmpfs 236M 0 236M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/vda15 127M 294K 127M 1% /boot/efi
tmpfs 48M 0 48M 0% /run/user/0
Mas qemu-img
ainda mostra o tamanho virtual como 15G
❯ qemu-img info kthw-jumpbox
image: kthw-jumpbox
file format: qcow2
virtual size: 15 GiB (16106127360 bytes)
disk size: 1.3 GiB
cluster_size: 65536
Format specific information:
compat: 1.1
compression type: zlib
lazy refcounts: false
refcount bits: 16
corrupt: false
extended l2: false
Child node '/file':
filename: kthw-jumpbox
protocol type: file
file length: 1.3 GiB (1397948416 bytes)
disk size: 1.3 GiB
O que está acontecendo? Por que a VM não vê o tamanho virtual e o que posso fazer para corrigir isso?
Eu vejo agora. Eu precisava expandir o sistema de arquivos para o tamanho da partição virtual com
growpart
eresize2fs
.