LXD 4.4 -- container doesn't start unless apparmor is installed

I’ve recently updated LXD from 4.3 to 4.4 and on reboot all containers failed to start. I looked into the system journal and found the error:

lxd[1009]: t=2020-08-01T12:04:56-0500 lvl=eror msg=“The start hook failed” container=pihole err="Failed to run: apparmor_parser --version: "

LXD appears to expect the apparmor_parser executable to exist on the host, regardless of if apparmor is in use by any of the containers. Installing apparmor resolves the issue, but I don’t really need it installed on my system.

Is this issue worthy of a bug report against LXD, or should I take it up with the packagers of LXD for my distro (Arch Linux)?

That’s definitely a bug, we’ll sort it out quickly. LXD detects apparmor support on startup, so shouldn’t ever hit that code path when on a system without apparmor.

I’ve run into this issue. I tried downgrading to 4.3 but now LXD refuses to start due to database schema version. Is it possible to perform a safe schema downgrade or I’ve to wait for a new version of LXD to come out?

Distro: Arch Linux x86_64
Log (reverse):

Aug 03 16:49:39 aaa systemd[1]: lxd.service: Main process exited, code=exited, status=1/FAILURE
Aug 03 16:49:39 aaa lxd[1472]: Error: Error creating database: schema version '40' is more recent than expected '39'
Aug 03 16:49:39 aaa lxd[1472]: t=2020-08-03T16:49:39+0000 lvl=eror msg="Failed to start the daemon: Error creating database: schema version '40' is more recent than expected '39'"
Aug 03 16:49:39 aaa lxd[1472]: t=2020-08-03T16:49:39+0000 lvl=warn msg=" - Couldn't find the CGroup blkio.weight, I/O weight limits will be ignored"
Aug 03 16:49:39 aaa lxd[1472]: t=2020-08-03T16:49:39+0000 lvl=warn msg="AppArmor support has been disabled because of lack of kernel support"
1 Like