Help! lost lvm's and instances failed to start

So I was playing with incus export trying to figure out how to setup and organize. This lead to a bunch of exports being generated in incus/backups and filling the root disk to the maximum. Freezing my server and forcing a hard reboot. After boot I was able to remove the dangling exports in backups to clear space.

However. No no instance can start because it seems the lvm’s on the loop device utilizing default.img are not mounted. Throwing failed to initialize LVM error starting a instance. Tried some things I could find around, like changing LVM.conf scan parameter. No success.

level=error msg=“Failed to auto start instance” err="Failed to activate LVM logical volume

I also made a booboo transferring some data to this new sever setup before having the proper backups in place. :sob::sob:

Really hopeful one of you will have recovery guidance getting the lvm’s up and running.

incus@incus:~$ sudo lvmdiskscan
/dev/nvme0n1p1 [ 976.00 MiB]
/dev/nvme0n1p2 [ <1.79 TiB]
/dev/nvme0n1p3 [ <29.54 GiB]
/dev/loop0 [ 1.00 TiB] LVM physical volume
/dev/sda [ <3.64 TiB]
1 disk
3 partitions
0 LVM physical volume whole disks
1 LVM physical volume

incus@incus:~$ sudo losetup -a
/dev/loop0: [66306]:50200780 (/var/lib/incus/disks/default.img)

Solved.

Been digging around for related topics and suddenly found this discussion: Version 1.0.0 does not activate my thinpool. · Issue #244 · jthornber/thin-provisioning-tools · GitHub. This fixed it for me, replying here for reference purposes.

In /etc/lvm.config locate thin_check_options = [ “-q”, “–clear-needs-check-flag” ] enable it and modify the flag to –auto-repair so it becomes thin_check_options = [ “-q”, “–auto-repair” ]. Reboot and everything is back. It is unclear if it is safe to leave this as default, so I turned it off and reboot once more.

Can you show the output of pvs, vgs and lvs?

incus@incus:~$ sudo pvs
  PV         VG      Fmt  Attr PSize     PFree
  /dev/loop0 default lvm2 a--  <1024.00g    0
incus@incus:~$ sudo vgs
  VG      #PV #LV #SN Attr   VSize     VFree
  default   1  11   0 wz--n- <1024.00g    0
incus@incus:~$ sudo lvs
  LV                                                                      VG      Attr       LSize     Pool          Origin                     Data%  Meta%  Move Log Cpy%Sync Convert
  IncusThinPool                                                           default twi-aotz-- <1022.00g                                          57.09  21.27 
  containers_alpine--adguardhome                                          default Vwi-aotz-k   956.00m IncusThinPool                            56.76        
  containers_alpine--calibre                                              default Vwi-aotz-k    30.00g IncusThinPool                            76.01        
  containers_alpine--calibre-pre--start                                   default Vri---tz-k    30.00g IncusThinPool containers_alpine--calibre              
  containers_alpine--immich                                               default Vwi-aotz-k   600.00g IncusThinPool                            81.82        
  containers_alpine--mosquitto                                            default Vwi-aotz-k   512.00m IncusThinPool                            65.36        
  containers_alpine--ntfy                                                 default Vwi-aotz-k   512.00m IncusThinPool                            72.50        
  containers_debian--services                                             default Vwi-aotz-k    35.00g IncusThinPool                            63.63        
  containers_debian--syncthing                                            default Vwi-aotz-k    60.00g IncusThinPool                            75.93        
  images_ec631a25f5d8a34d1319547282b6fe55612e69ae8a23a5c5e406fc3288de6cc3 default Vwi---tz-k    10.00g IncusThinPool                                         
  images_fa5f3f739e9892f12f18fa643641749bc82fd3ba12e7fb781e9112b1c980969c default Vwi---tz-k    10.00g IncusThinPool                                         

It would be great if there were a way to avoid the utilization of the same disk on export. This makes exporting anything bigger than 50% of the disk impossible.

That’s what storage.backups_volume is for.

Okay, so everything seems to be there.

Can you do incus monitor --pretty in a terminal while running incus start NAME in another?

Sure! You did see it’s solved?

incus@incus:/mnt/satalvm$ incus start alpine-ntfy
incus@incus:~$ incus monitor --pretty
DEBUG  [2025-09-17T20:51:45+02:00] Event listener server handler started         id=a9adafee-bb40-429b-9bcb-9093e1358547 local=/var/lib/incus/unix.socket remote=@
DEBUG  [2025-09-17T20:51:45+02:00] Handling API request                          ip=@ method=GET protocol=unix url=/1.0 username=incus
DEBUG  [2025-09-17T20:51:45+02:00] Handling API request                          ip=@ method=GET protocol=unix url=/1.0/instances/alpine-ntfy username=incus
DEBUG  [2025-09-17T20:51:45+02:00] Handling API request                          ip=@ method=GET protocol=unix url=/1.0/events username=incus
DEBUG  [2025-09-17T20:51:45+02:00] Event listener server handler started         id=590e8227-7291-4615-91b1-aad32b204dbb local=/var/lib/incus/unix.socket remote=@
DEBUG  [2025-09-17T20:51:45+02:00] Handling API request                          ip=@ method=PUT protocol=unix url=/1.0/instances/alpine-ntfy/state username=incus
DEBUG  [2025-09-17T20:51:45+02:00] Started operation                             class=task description="Starting instance" operation=cbdcf29d-24ad-4332-8d7b-51b4d5581e64 project=default
DEBUG  [2025-09-17T20:51:45+02:00] New operation                                 class=task description="Starting instance" operation=cbdcf29d-24ad-4332-8d7b-51b4d5581e64 project=default
DEBUG  [2025-09-17T20:51:45+02:00] Start started                                 instance=alpine-ntfy instanceType=container project=default stateful=false
INFO   [2025-09-17T20:51:45+02:00] ID: cbdcf29d-24ad-4332-8d7b-51b4d5581e64, Class: task, Description: Starting instance  CreatedAt="2025-09-17 20:51:45.874178977 +0200 CEST" Err= Location=none MayCancel=false Metadata="map[]" Resources="map[instances:[/1.0/instances/alpine-ntfy]]" Status=Pending StatusCode=Pending UpdatedAt="2025-09-17 20:51:45.874178977 +0200 CEST"
INFO   [2025-09-17T20:51:45+02:00] ID: cbdcf29d-24ad-4332-8d7b-51b4d5581e64, Class: task, Description: Starting instance  CreatedAt="2025-09-17 20:51:45.874178977 +0200 CEST" Err= Location=none MayCancel=false Metadata="map[]" Resources="map[instances:[/1.0/instances/alpine-ntfy]]" Status=Running StatusCode=Running UpdatedAt="2025-09-17 20:51:45.874178977 +0200 CEST"
INFO   [2025-09-17T20:51:45+02:00] Starting instance                             action=start created="2025-09-15 09:03:59.802214773 +0000 UTC" ephemeral=false instance=alpine-ntfy instanceType=container project=default stateful=false used="2025-09-17 18:51:29.564835225 +0000 UTC"
DEBUG  [2025-09-17T20:51:45+02:00] Instance operation lock created               action=start instance=alpine-ntfy project=default reusable=false
DEBUG  [2025-09-17T20:51:45+02:00] Handling API request                          ip=@ method=GET protocol=unix url=/1.0/operations/cbdcf29d-24ad-4332-8d7b-51b4d5581e64 username=incus
DEBUG  [2025-09-17T20:51:45+02:00] MountInstance started                         driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:45+02:00] Handling API request                          ip="192.168.178.88:56419" method=GET protocol=tls url="/1.0/operations?recursion=1&project=default" username=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756
DEBUG  [2025-09-17T20:51:45+02:00] Matched trusted cert                          fingerprint=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756 subject="O=Incus UI 192.168.178.7 (Browser Generated)"
DEBUG  [2025-09-17T20:51:45+02:00] Matched trusted cert                          fingerprint=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756 subject="O=Incus UI 192.168.178.7 (Browser Generated)"
DEBUG  [2025-09-17T20:51:45+02:00] Matched trusted cert                          fingerprint=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756 subject="O=Incus UI 192.168.178.7 (Browser Generated)"
DEBUG  [2025-09-17T20:51:45+02:00] Handling API request                          ip="192.168.178.88:56419" method=GET protocol=tls url="/1.0/operations?recursion=1&project=default" username=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756
DEBUG  [2025-09-17T20:51:45+02:00] Matched trusted cert                          fingerprint=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756 subject="O=Incus UI 192.168.178.7 (Browser Generated)"
DEBUG  [2025-09-17T20:51:46+02:00] Activated logical volume                      dev=default/containers_alpine--ntfy driver=lvm pool=default volName=alpine-ntfy
DEBUG  [2025-09-17T20:51:46+02:00] MountInstance finished                        driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] Mounted logical volume                        dev=/dev/dm-8 driver=lvm options=discard path=/var/lib/incus/storage-pools/default/containers/alpine-ntfy pool=default volName=alpine-ntfy
DEBUG  [2025-09-17T20:51:46+02:00] Starting device                               device=eth0 instance=alpine-ntfy instanceType=container project=default type=nic
DEBUG  [2025-09-17T20:51:46+02:00] Starting device                               device=root instance=alpine-ntfy instanceType=container project=default type=disk
DEBUG  [2025-09-17T20:51:46+02:00] UpdateInstanceBackupFile started              driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] Skipping unmount as in use                    driver=lvm pool=default refCount=1 volName=alpine-ntfy
DEBUG  [2025-09-17T20:51:46+02:00] UpdateInstanceBackupFile finished             driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] Handling API request                          ip=@ method=GET protocol=unix url="/internal/containers/alpine-ntfy/onstart?project=default" username=root
DEBUG  [2025-09-17T20:51:46+02:00] Scheduler: container alpine-ntfy started: re-balancing
DEBUG  [2025-09-17T20:51:46+02:00] Success for operation                         class=task description="Starting instance" operation=cbdcf29d-24ad-4332-8d7b-51b4d5581e64 project=default
DEBUG  [2025-09-17T20:51:46+02:00] Instance operation lock finished              action=start err="<nil>" instance=alpine-ntfy project=default reusable=false
INFO   [2025-09-17T20:51:46+02:00] Started instance                              action=start created="2025-09-15 09:03:59.802214773 +0000 UTC" ephemeral=false instance=alpine-ntfy instanceType=container project=default stateful=false used="2025-09-17 18:51:29.564835225 +0000 UTC"
INFO   [2025-09-17T20:51:46+02:00] ID: cbdcf29d-24ad-4332-8d7b-51b4d5581e64, Class: task, Description: Starting instance  CreatedAt="2025-09-17 20:51:45.874178977 +0200 CEST" Err= Location=none MayCancel=false Metadata="map[]" Resources="map[instances:[/1.0/instances/alpine-ntfy]]" Status=Success StatusCode=Success UpdatedAt="2025-09-17 20:51:45.874178977 +0200 CEST"
DEBUG  [2025-09-17T20:51:46+02:00] Start finished                                instance=alpine-ntfy instanceType=container project=default stateful=false
INFO   [2025-09-17T20:51:46+02:00] Action: instance-started, Source: /1.0/instances/alpine-ntfy, Requestor: unix/incus (@)
DEBUG  [2025-09-17T20:51:46+02:00] Event listener server handler stopped         listener=590e8227-7291-4615-91b1-aad32b204dbb local=/var/lib/incus/unix.socket remote=@
DEBUG  [2025-09-17T20:51:46+02:00] Matched trusted cert                          fingerprint=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756 subject="O=Incus UI 192.168.178.7 (Browser Generated)"
DEBUG  [2025-09-17T20:51:46+02:00] Handling API request                          ip="192.168.178.88:56419" method=GET protocol=tls url="/1.0/instances?recursion=2&filter=name+eq+%28%5E%24%7C%5E.*%29&project=default" username=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756
DEBUG  [2025-09-17T20:51:46+02:00] Matched trusted cert                          fingerprint=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756 subject="O=Incus UI 192.168.178.7 (Browser Generated)"
DEBUG  [2025-09-17T20:51:46+02:00] Matched trusted cert                          fingerprint=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756 subject="O=Incus UI 192.168.178.7 (Browser Generated)"
DEBUG  [2025-09-17T20:51:46+02:00] Matched trusted cert                          fingerprint=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756 subject="O=Incus UI 192.168.178.7 (Browser Generated)"
DEBUG  [2025-09-17T20:51:46+02:00] Handling API request                          ip="192.168.178.88:56419" method=GET protocol=tls url="/1.0/operations?recursion=1&project=default" username=b2e4539736a23c94e2107612c62b5331e0d2c8a7d1757c85335903ea6a663756
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-adguardhome pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-mosquitto pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=debian-services pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-mosquitto pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=debian-services pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-adguardhome pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage started                      driver=lvm instance=debian-services pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage finished                     driver=lvm instance=debian-services pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage started                      driver=lvm instance=alpine-mosquitto pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage finished                     driver=lvm instance=alpine-mosquitto pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=debian-services pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-mosquitto pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage started                      driver=lvm instance=alpine-adguardhome pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage finished                     driver=lvm instance=alpine-adguardhome pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=debian-services pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage started                      driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-adguardhome pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage finished                     driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-mosquitto pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-adguardhome pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-ntfy pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-calibre pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-immich pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-calibre pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=debian-syncthing pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-immich pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage started                      driver=lvm instance=alpine-immich pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage finished                     driver=lvm instance=alpine-immich pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage started                      driver=lvm instance=alpine-calibre pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage finished                     driver=lvm instance=alpine-calibre pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=debian-syncthing pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-immich pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage started                      driver=lvm instance=debian-syncthing pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage finished                     driver=lvm instance=debian-syncthing pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-calibre pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-homeassistant pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-immich pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=debian-syncthing pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-calibre pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=debian-syncthing pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-homeassistant pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage started                      driver=lvm instance=alpine-homeassistant pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage finished                     driver=lvm instance=alpine-homeassistant pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-media pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-media pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-homeassistant pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-homeassistant pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-backup pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-backup pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage started                      driver=lvm instance=alpine-media pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage finished                     driver=lvm instance=alpine-media pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage started                      driver=lvm instance=alpine-backup pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] GetInstanceUsage finished                     driver=lvm instance=alpine-backup pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-media pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots started                driver=lvm instance=alpine-backup pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-media pool=default project=default
DEBUG  [2025-09-17T20:51:46+02:00] CacheInstanceSnapshots finished               driver=lvm instance=alpine-backup pool=default project=default

So, when setting this to pool/volume, is this the location where the export temporarily goes instead of the default /var/lib/incus/backups/instances? This could use some additional clarification in the documents.

Ah, oops, I missed that post somehow, glad that you got it resolved!

No, it’s an Incus managed volume, but it can be on whatever pool you want.

So if you have a bunch of space somewhere else on the host, you could create a dir pool using that location, then set storage.backups_volume to POOLNAME/VOLNAME for a custom volume within that pool.

For example, say you want to put your backups and images under /mnt/disk1, you’d do:

incus storage pool create disk1 dir source=/mnt/disk1
incus storage volume create disk1 backups
incus storage volume create disk1 images
incus config set storage.backups_volume=disk1/backups
incus config set storage.images_volume=disk1/images

Adding a volume to the storage.backups_volume isn’t working as I wish:

Modified storage.backups_volume to use satalvm/backups

Running backup of alpine-calibre Backing up instance: 18.31GB (216.79MB/s)

Creates it first here:

incus@incus:/mnt/satalvm$ sudo ls /var/lib/incus/backups/instances
alpine-calibre

storage.backups_volume