[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: