[arch-projects] [PATCH 04/10] mtab: don't write to mtab if it is a symlink

Tom Gundersen teg at jklm.no
Wed Mar 30 14:01:25 EDT 2011

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 <teg at jklm.no>
 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
-	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
 run_hook sysinit_premount
 # now mount all the local filesystems
 /bin/mount -a -t $NETFS -O no_netdev

More information about the arch-projects mailing list