BTRFS raw mount issues

Good morning,

I have been running a LXC Server for home services for a year now, built my automation with ansible. I finally bought some more hardware and hard drives and decided to redo everything.

I was using raw.mount.options as seen below for the BTRFS Subvolumes. but utilizing them now after pushing to the new install I get the error below the profile config.

config: {}
description: Log Data Mount
devices:
  log_data:
    path: /logs
    raw.mount.options: rw,noatime,compress=zstd:3,discard=async,space_cache=v2,autodefrag,user_subvol_rm_allowed,subvol=@lxd-common/@log
    shift: "true"
    source: /dev/disk/by-uuid/74e22187-7c00-4897-acbd-04c4b5eb8b55
    type: disk
name: log_mount
used_by:
- /1.0/instances/test

Error

Error: Failed to start device "log_data": Unable to mount "/proc/self/fd/30" at "/var/lib/lxd/devices/test/disk.log_data.logs" with filesystem "btrfs": invalid argument

I found a work around instead of using the subvol=@lxd-common/@log, if I use subvolid=222 or whatever number the subvol is, and it mounts just fine.

1 Like