On 11 Mar 2015, at 00:58, Jeremy Laidman <jlaidman at rebel-it.com.au> wrote:
On 11 March 2015 at 00:44, Thomas Eckert <thomas.eckert at it-eckert.de <mailto:thomas.eckert at it-eckert.de>> wrote: Just for future reference as you already found your solution:
From looking at the util-linux package I understand that _if_ the /proc-filesystem is mounted the information is used from there.
I don't think this is the case. Running "strace" on the "mount" command shows that it first looks at /etc/mtab, and if that exists, it doesn't look at /proc/mounts. Only if /etc/mtab doesn't exist, does mount look at /proc/mounts.
Strange, I did also check with strace and did not see /etc/mtab used. This is on Debian 7.x, Debian kernel 3.2.0-4-amd64 and util-linux 2.20.1-5.3
root at bb:~# strace -e trace=open mount 2>&1 | egrep 'mtab|proc'
open("/proc/filesystems", O_RDONLY) = 3
open("/proc/self/mountinfo", O_RDONLY) = 3
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
So in a situation where the filesystem containing /etc is having problems and goes read-only, /etc/mtab won't get updated because it's now read-only.
Agreed.
So re-using the mount-info for the r/o-check is at least highly dependent on the individual environment and versions.
Cheers Thomas