[Bug 712892] Re: mount (silently) ignores options for bind mounts

Scott Moser smoser at canonical.com
Fri Mar 18 20:05:19 UTC 2011


Thank you for taking the time to open a thorough bug report and also
submit a patch.

I can't personally think of any fallout of the suggested changes, but it
does seem that it would be best to run this behavior by upstream first,
and there have been other discussions on such changes [1].  That
discussion at least resulted in a warning that the warning you show
above.

I think it would be probably best to post this upstream and see what
their response is.  Upstream has mailing list info at [2].

--
[1] http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/2771
[2] http://userweb.kernel.org/~kzak/util-linux-ng/

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is a direct subscriber.
https://bugs.launchpad.net/bugs/712892

Title:
  mount (silently) ignores options for bind mounts

Status in The Util-Linux-ng Set of Utilities:
  New
Status in “util-linux” package in Ubuntu:
  New

Bug description:
  Binary package hint: util-linux

  mount ignores any options given for bind mounts and adds an incorrect line to mtab.
  there is (at least) one exception: the option ro (== read-only). it warns that the bind mount is mounted read-write, if one tries to use that option together with bind.

  some examples of the current behavior (with comments):
  ~/bla# mkdir foo
  ~/bla# mkdir bar
  ~/bla# touch foo/test
  ~/bla# mount foo/ bar/ -obind,ro
  mount: warning: bar/ seems to be mounted read-write.
  # at least it says so
  ~/bla# rm bar/test 
  ~/bla# ls bar/test
  ls: cannot access bar/test: No such file or directory
  # expected after that warning
  ~/bla# touch foo/test
  ~/bla# mount foo/ bar/ -obind,somebogusoption1
  ~/bla# mount foo/ bar/ -obind,somebogusoption2
  ~/bla# mount foo/ bar/ -obind,somebogusoption3
  ~/bla# mount
  ...
  /root/bla/foo on /root/bla/bar type none (rw,bind)
  /root/bla/foo on /root/bla/bar type none (rw,bind,somebogusoption1)
  /root/bla/foo on /root/bla/bar type none (rw,bind,somebogusoption2)
  /root/bla/foo on /root/bla/bar type none (rw,bind,somebogusoption3)
  # mount adds bogus lines to mtab...
  ~/bla# ls bar/
  test
  # but at least it does mount
  umount bar
  mount
  ...
  /root/bla/foo on /root/bla/bar type none (rw,bind)
  /root/bla/foo on /root/bla/bar type none (rw,bind,somebogusoption1)
  /root/bla/foo on /root/bla/bar type none (rw,bind,somebogusoption2)
  # and umount only removes one (bogus) line per execution :)

  the behavior is kinda documented in the manpage (well the bogus lines are clearly a bug (two actually), but i don't care right now).
  a workaround is to first bind mount and then use the remount option for setting other options e.g.:
  ~/bla# mount foo/ bar/ -obind
  ~/bla# mount bar/ -oremount,ro
  ~/bla# rm bar/test 
  rm: cannot remove `bar/test': Read-only file system

  the problem is... this does not work with fstab:
  neither setting up one line with options bind,ro such as
  /root/bla/foo	/root/bla/bar	none	bind,ro
  (this gives the same warning as above)
  nor using two, one with the remount option:
  /root/bla/foo	/root/bla/bar	none	bind
  /root/bla/foo	/root/bla/bar	none	remount,ro
  (this even fails silently to remount read-only!)

  the warning was introduced by Karel Zak in november 2009. i read that debian had a patch for correcting at least some of the issues above, but i could not find anything.
  one workaround for certain situations could be to use pam_mount.

  this war reported/tested on ubuntu 10.10 with kernel 2.6.35-25 and
  mount 2.17.2-0ubuntu1.10.10.1.



More information about the Ubuntu-sponsors mailing list