Bug#836529: hurd: won't boot if /etc/hurd/runsystem is runsystem.gnu, because runsystem.hurd does not exist
Package: hurd
Version: 1:0.8.git20160826-1
Severity: normal
The hurd package makes /etc/hurd/runsystem a symlink that is
managed with the alternatives system. The default is
runsystem.sysv, and runsystem.gnu is also available.
However, if I use 'update-alternatives --config runsystem' to
select runsystem.gnu, then the system fails to boot, because
/etc/hurd/runsystem.gnu runs /hurd/init, which requires
/etc/hurd/runsystem.hurd, which does not exist.
I tried to fix this by installing daemons/runsystem.hurd from the
Debian Hurd source tree to /etc/hurd/runsystem.hurd and making it
executable. That helped but there were still several problems:
1. runsystem.hurd runs /libexec/rc, which does not exist.
/etc/hurd/rc should be used instead.
2. runsystem.hurd runs /libexec/runttys, which does not exist.
/sbin/runttys should be used instead.
3. runsystem.hurd sets PATH=/bin:/sbin, which omits /usr/bin and
/usr/sbin. The login shell apparently inherits that that
setting and uses it for some startup script, causing errors:
-bash: id: command not found
-bash: [: : integer expression expected
4. The file systems listed in /etc/fstab were not automatically
mounted. I suppose I could work around this by setting them as
passive translators, but then it would be more difficult to
ensure that a user won't cause the file-system translator to
start while root is running fsck on the store.
5. dhclient did not start automatically. I suppose I could set a
fixed IP address instead, or edit some startup script.
Please make the hurd package install runsystem.hurd to /etc/hurd/,
and patch it to fix problems 1 to 3. That way, runsystem.gnu
will at least work well enough to let root log in and either
switch back to runsystem.sysv or fix problems 4 and 5 locally.
Alternatively, runsystem.gnu could be removed from the package
and unregistered from the alternatives system.
-- System Information:
Debian Release: stretch/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: hurd-i386 (i686-AT386)
Kernel: GNU-Mach 1.7+git20160809-486-dbg/Hurd-0.8
Locale: LANG=fi_FI.UTF-8, LC_CTYPE=fi_FI.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
Versions of packages hurd depends on:
ii hurd-libs0.3 1:0.8.git20160826-1
ii libblkid1 2.28.1-1
ii libbz2-1.0 1.0.6-8
ii libc0.3 2.23-5
ii libdaemon0 0.14-6
ii libncursesw5 6.0+20160625-1+b1
ii libtinfo5 6.0+20160625-1+b1
ii libx11-6 2:1.6.3-1+b1
ii netdde 0.0.20150828-3
ii sysv-rc 2.88dsf-59.8
ii xkb-data 2.17-1
ii zlib1g 1:1.2.8.dfsg-2
Versions of packages hurd recommends:
pn bf-utf-source <none>
Versions of packages hurd suggests:
pn hurd-doc <none>
-- Configuration Files:
/etc/default/hurd-console changed:
ENABLE='false'
DISPLAY='-d vga'
KBD='-d pc_kbd'
if [ -f /etc/default/keyboard ]
then
. /etc/default/keyboard
fi
[ -z "$XKBLAYOUT" ] || KBD="$KBD --keymap $XKBLAYOUT"
KBD_REPEAT='--repeat=kbd'
MOUSE='-d pc_mouse --protocol=ps/2'
MOUSE_REPEAT='--repeat=mouse'
-- no debconf information
Reply to: