On Wed, Mar 30, 2011 at 8:01 PM, Tom Gundersen <[email protected]> wrote: > In the future /etc/mtab should be a symlink to /proc/self/mounts, add > support for this in rc.sysinit to be prepared. While strictly not > needed, this makes it clear that the functionality can be removed once > we move over to using symlinks. > > This functionality is expected with the next release of util-linux > (2.20), but is already available in the current version if the > experimental libmount support is enabled. > > Signed-off-by: Tom Gundersen <[email protected]> > --- > rc.sysinit | 13 +++++++++---- > 1 files changed, 9 insertions(+), 4 deletions(-) > > diff --git a/rc.sysinit b/rc.sysinit > index 69fdab3..1601e7a 100755 > --- a/rc.sysinit > +++ b/rc.sysinit > @@ -279,11 +279,16 @@ fi > > stat_busy "Mounting Local Filesystems" > /bin/mount -n -o remount,rw / > -if [ -x /bin/findmnt -a -e /proc/self/mountinfo ]; then > - /bin/findmnt -rnu -o SOURCE,TARGET,FSTYPE,OPTIONS >| /etc/mtab > -else > - cat /proc/mounts >| /etc/mtab > + > +# don't touch /etc/mtab if it is a symlink to /proc/self/mounts > +if [ ! -L /etc/mtab ]; then > + if [ -x /bin/findmnt -a -e /proc/self/mountinfo ]; then > + /bin/findmnt -rnu -o SOURCE,TARGET,FSTYPE,OPTIONS >| /etc/mtab > + else > + cat /proc/mounts >| /etc/mtab > + fi > fi > + > run_hook sysinit_premount > # now mount all the local filesystems > /bin/mount -a -t $NETFS -O no_netdev > -- > 1.7.4.2 > > Maybe you should use bash style with [[.
Something like the follwing looks better if [[ -L /etc/mtab ]]; then : elif [[ -x /bin/findmnt && -e /proc/self/mountinfo ]]; then /bin/findmnt -rnu -o SOURCE,TARGET,FSTYPE,OPTIONS >| /etc/mtab else cat /proc/mounts >| /etc/mtab fi -- Sébastien Luttringer www.seblu.net
