VM root resize gone wrong and then not

Incus installed with it’s own nvme zfs pool.
Host bare metal:

incus --version
6.0.0
cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=24.04
DISTRIB_CODENAME=noble
DISTRIB_DESCRIPTION="Ubuntu 24.04.1 LTS"

Thought i could resize / increase root disk on a running Ubuntu 24.04.1 VM container with
incus config device override code root size=20GB
which led to when trying to restart,

Error: Failed to start device "root": Failed to apply deferred quota from "volatile.root.apply_quota": Failed to run: zfs set volsize=20000006144 incpool/virtual-machines/code.block: exit status 255 (cannot set property for 'incpool/virtual-machines/code.block': 'volsize' must be a multiple of volume block size (16K))

Then a,

incus config device set code root size 25GB

allowed me to boot it up again, though desktop is not fully loading up and looks stuck.

zpool list
NAME      SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
incpool  1.81T  10.9G  1.80T        -         -     0%     0%  1.00x    ONLINE  -

 zfs list
NAME                                                                                            USED  AVAIL  REFER  MOUNTPOINT
incpool                                                                                        10.9G  1.75T    24K  legacy
incpool/buckets                                                                                  24K  1.75T    24K  legacy
incpool/containers                                                                             3.07G  1.75T    24K  legacy
incpool/containers/htpc                                                                         596M  1.75T   601M  legacy
incpool/containers/ubuntu-scraper                                                              2.48G  1.75T  2.70G  legacy
incpool/custom                                                                                   24K  1.75T    24K  legacy
incpool/deleted                                                                                2.60G  1.75T    24K  legacy
incpool/deleted/buckets                                                                          24K  1.75T    24K  legacy
incpool/deleted/containers                                                                       24K  1.75T    24K  legacy
incpool/deleted/custom                                                                           24K  1.75T    24K  legacy
incpool/deleted/images                                                                         1.73G  1.75T    24K  legacy
incpool/deleted/images/638cdeac193353728f8e45cada7757849f81d7c5a33381680d49313ae2277e40        5.62M  1.75T  5.62M  legacy
incpool/deleted/images/99fd21e8d3e5654145282ab4173a36a83d7411273064cc5b241458c9fccbf10e          27K   500M    26K  legacy
incpool/deleted/images/99fd21e8d3e5654145282ab4173a36a83d7411273064cc5b241458c9fccbf10e.block  1.47G  1.75T  1.47G  -
incpool/deleted/images/c15db35bae40873d07766fa1486042b2ce7d0cfa2ce37e617282e20a942ae52f         258M  1.75T   258M  legacy
incpool/deleted/virtual-machines                                                                892M  1.75T    24K  legacy
incpool/deleted/virtual-machines/04452961-a192-469d-b402-0098e982e231                          7.21M   493M  7.19M  legacy
incpool/deleted/virtual-machines/817329c9-0e2c-40ba-abc1-72dbb74d8b5d                           884M  1.75T  2.31G  -
incpool/images                                                                                   24K  1.75T    24K  legacy
incpool/virtual-machines                                                                       5.22G  1.75T    24K  legacy
incpool/virtual-machines/code                                                                  57.5K   500M  7.19M  legacy
incpool/virtual-machines/code.block                                                            3.35G  1.75T  5.94G  -
incpool/virtual-machines/scraper                                                                 57K   500M  7.19M  legacy
incpool/virtual-machines/scraper.block                                                         1.87G  1.75T  3.96G  -
incpool/virtual-machines/ubuntu-desktop                                                        18.5K   500M  7.19M  legacy
incpool/virtual-machines/ubuntu-desktop.block                                                     1K  1.75T  2.31G  -

root@code:~# lsblk 
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
loop0    7:0    0     4K  1 loop /snap/bare/5
loop1    7:1    0 175.7M  1 loop /snap/chromium/3002
loop2    7:2    0 175.7M  1 loop /snap/chromium/2997
loop3    7:3    0  73.9M  1 loop /snap/core22/1663
loop4    7:4    0  73.9M  1 loop /snap/core22/1722
loop5    7:5    0  66.2M  1 loop /snap/core24/609
loop6    7:6    0  67.8M  1 loop /snap/cups/1067
loop7    7:7    0 505.1M  1 loop /snap/gnome-42-2204/176
loop8    7:8    0  91.7M  1 loop /snap/gtk-common-themes/1535
loop9    7:9    0  44.3M  1 loop /snap/snapd/23258
loop10   7:10   0  38.8M  1 loop /snap/snapd/21759
sda      8:0    0  23.3G  0 disk 
├─sda1   8:1    0   100M  0 part /boot/efi
└─sda2   8:2    0  23.2G  0 part /

incus config show code
architecture: x86_64
config:
  image.architecture: amd64
  image.description: Ubuntu noble amd64 (20241119_07:42)
  image.os: Ubuntu
  image.release: noble
  image.requirements.cgroup: v2
  image.serial: "20241119_07:42"
  image.type: disk-kvm.img
  image.variant: desktop
  limits.cpu: "6"
  limits.memory: 8GB
  volatile.base_image: 99fd21e8d3e5654145282ab4173a36a83d7411273064cc5b241458c9fccbf10e
  volatile.cloud-init.instance-id: d3d71215-ae9f-4924-b8e2-c0ec07f3837c
  volatile.eth0.hwaddr: 00:16:3e:71:c3:7a
  volatile.last_state.power: STOPPED
  volatile.last_state.ready: "false"
  volatile.uuid: dc194b7e-3045-41e6-82ec-944615ffd580
  volatile.uuid.generation: dc194b7e-3045-41e6-82ec-944615ffd580
  volatile.vsock_id: "1389116212"
devices:
  root:
    path: /
    pool: incpool
    size: 25GB
    type: disk
ephemeral: false
profiles:
- default
stateful: false
description: ""

After a incus restart the VM was able to fully load up the Gnome Desktop.

Is this bug worthy?

Not sure about the behavior within the guest, but for the disk size, I’d recommend using GiB instead of GB (1024 bytes per kB instead of 1000 bytes per kB), that should take care of those kind of alignment issues.

1 Like