[Bug 1589289] Re: fstrim: cannot open /dev/.lxd-mounts: Permission denied

Timo Aaltonen tjaalton at ubuntu.com
Fri Aug 23 11:20:21 UTC 2019


Hello Tamas, or anyone else affected,

Accepted util-linux into disco-proposed. The package will build now and
be available at https://launchpad.net/ubuntu/+source/util-
linux/2.33.1-0.1ubuntu3 in a few hours, and then in the -proposed
repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed.  Your feedback will aid us getting this
update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested and change the tag from
verification-needed-disco to verification-done-disco. If it does not fix
the bug for you, please add a comment stating that, and change the tag
to verification-failed-disco. In either case, without details of your
testing we will not be able to proceed.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in
advance for helping!

N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.

** Changed in: util-linux (Ubuntu Disco)
       Status: In Progress => Fix Committed

** Changed in: util-linux (Ubuntu Bionic)
       Status: In Progress => Fix Committed

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to util-linux in Ubuntu.
https://bugs.launchpad.net/bugs/1589289

Title:
  fstrim: cannot open /dev/.lxd-mounts: Permission denied

Status in util-linux package in Ubuntu:
  Fix Released
Status in util-linux source package in Xenial:
  Fix Committed
Status in util-linux source package in Bionic:
  Fix Committed
Status in util-linux source package in Disco:
  Fix Committed
Status in util-linux package in Debian:
  Unknown

Bug description:
  [Impact]
  fstrim weekly cronjob output in an unprivileged LXD container:

  /etc/cron.weekly/fstrim:
  fstrim: cannot open /dev/.lxd-mounts: Permission denied
  fstrim: /dev/fuse: not a directory
  fstrim: /dev/lxd: FITRIM ioctl failed: Operation not permitted

  There is a github issue:

  https://github.com/lxc/lxd/issues/2030

  The outcome is that it's purely an fstrim misbehaviour, it could be
  smarter.

  Stephane Graber comment:

  As all of this is handled by the kernel, there isn't anything we can
  do about it in LXD.

  I think fstrim should be made slightly more clever:

  * Don't run on bind-mounts (you can detect bind-mounts by parsing /proc/self/mountinfo instead of /proc/mounts)
  * Maybe not be as noisy on expected errors like EACCES, EPERM and ENOENT, only log actual failures which would likely be EINVAL or memory related errors.

  ProblemType: Bug
  DistroRelease: Ubuntu 16.04
  Package: util-linux 2.27.1-6ubuntu3
  ProcVersionSignature: Ubuntu 4.4.0-21.37-generic 4.4.6
  Uname: Linux 4.4.0-21-generic x86_64
  ApportVersion: 2.20.1-0ubuntu2.1
  Architecture: amd64
  Date: Sun Jun  5 19:49:04 2016
  ProcEnviron:
   LANGUAGE=en_US:en
   TERM=xterm
   PATH=(custom, no user)
   LANG=en_US.UTF-8
   SHELL=/bin/bash
  SourcePackage: util-linux
  UpgradeStatus: No upgrade log present (probably fresh install)

  [Test Case]
  * Ubuntu lxd container
  * Wait for the scheduled fstrim run (X: cronjob, B and late: systemd timer)
  * fstrim will run and report errors "Operation not permitted" "Permission denied", ...

  Container shouldn't run fstrim, it should only be run at host level.

  [Potential Regression]

  None, the change will only block fstrim to be automatically run at
  scheduled time. One can still run fstrim on a container manually, even
  if there is no purpose of doing that.

  Xenial uses the cronjob approach /etc/cron.weekly/fstrim
  Bionic and late switched to a systemd timer.

  2 differents fixes (one for X, and one for B and late) will be needed,
  but they'll do same thing, which prevent fstrim to automatically run
  if inside a container both fixes using systemd-virt-detect.

  [Other Informations]

  * The systemd timer change upstream PR:
  https://github.com/karelzak/util-linux/pull/841

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/util-linux/+bug/1589289/+subscriptions



More information about the foundations-bugs mailing list