Bug#701516: hurd: Please support /proc/mounts or equivalent for dynamic /etc/mtab
Package: hurd
Version: 20130105-1
Severity: important
This has been mentioned several times on the hurd mailing list and
on IRC. Just filing a bug so this isn't forgotten.
Hurd is the only remaining Debian platform not supporting a dynamic
/etc/mtab. Linux and kFreeBSD both link /etc/mtab to /proc/mounts.
This means that not only can mtab not get out of sync with the true
system state, it also allows correct behaviour with per-process
namespaces. This is just as important for Hurd where the use of
translators makes a single global mount table even less useful.
It would be ideal if Hurd could implement /proc/mounts as for other
platforms. Or possibly a translator on /etc/mtab itself? Whatever
makes the most sense.
Currently, initscripts mtab.sh generates /etc/mtab during boot by
replaying the mount actions occurring earlier during the boot
process. However, mtab.sh is scheduled for removal in jessie:
http://anonscm.debian.org/gitweb/?p=collab-maint/sysvinit;a=commitdiff;h=ec4a4b9fe76abd8208c355cba3ced40cfb2da7c9
http://anonscm.debian.org/gitweb/?p=collab-maint/sysvinit;a=blob;f=debian/changelog;h=b5900017c62a59765ea45075853352afa4611120;hb=jessie-pending
The code is no longer used on Linux or kFreeBSD. Hurd is probably
using it, but I'm not 100% certain. That's /etc/init.d/mtab.sh.
Note that mtab.sh adds selected filesystems from early boot scripts
(/proc, /sys, rootfs and the existing content of /proc/mounts).
Given that you don't have a /proc/mounts, it's already quite
broken on Hurd anyway--rootfs only? So if you want to adopt this
logic into a Hurd-specific boot script, that's probably the best
workaround to cope with the immediate removal. I'll be happy to
add appropriate Breaks to initscripts for you.
Regards,
Roger
-- System Information:
Debian Release: 7.0
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.32.33-kvm-i386-20111128-dirty (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Reply to: