[Solved] "Error: block device required" for storage on btrfs subvolume


With LXD 3.17 (snap install), my default storage is set on a btrfs subvolume, mounted in /etc/fstab like this:

/dev/sdc /var/snap/lxd/common/lxd/storage-pools/default btrfs subvol=lxd/storage/default,defaults,ssd,discard,noatime     0  1

The ssd was created with mkfs.btrfs /dev/sdc (full btrfs drive)

I have already moved some CT to that storage, and all seemed to work well.


  1. If I do a “lxc storage info default”, I get this:
Error: block device required
  1. If I create some new CT “lxc launch images:debian/buster cloud”, I get the same error:
Error: Failed container creation: Create container from image: Failed to mount storage pool: block device required
  1. I tried to set storage.backups_volume and storage.images_volume into that storage, (like @stgraber showed in LXD 3.17 has been released ), but I get this when I enter
lxc config set storage.backups_volume default/backups
Error: Failed to mount storage volume "default/backups": block device required

My storage pool is configured like this:

lxc storage show default
  source: /var/snap/lxd/common/lxd/storage-pools/default
  volatile.initial_source: /var/snap/lxd/common/lxd/storage-pools/default
description: ""
name: default
driver: btrfs
- /1.0/containers/dev1
- /1.0/containers/dev2-386
- /1.0/profiles/default
- /1.0/profiles/publicCT
- /1.0/storage-pools/default/volumes/custom/backups
- /1.0/storage-pools/default/volumes/custom/images
status: Created
- none

What’s wrong with my setup and what should I do? I don’t really know how/where to dig in. Thanks for your help or suggestions!

You should upgrade to a supported version of LXD first.
The entire storage layer was rewritten since the release you’re using, so switching to code we actually support will have to be the first step here.

Wow, I didn’t realize my LXD snap package was stuck to an old version. Fixing this also fixed the issue of this post - thank you once more for your help Stéphane.