Bug#750360: systemd-sysv: /sbin/init should be a relative symlink

Dominik George nik at naturalnet.de
Mon Jun 2 21:29:45 BST 2014


Package: systemd-sysv
Version: 204-10
Severity: important

/sbin/init is installed as a symbolic link to the absolute path
//lib/systemd/systemd.

This breaks in environments where the root filesystem is not mounted at /,
for example, when inspecting a chroot from outside or, which is
worse, when being first mounted from initramfs.

I just spent quite some time figuring out why the initramfs on a PXE
boot client behaved oddly, and it turned out that the nfs root mount
script in initramfs has a logic that repeatedly checks for the existence
of /root/sbin/init, with the soon-to-be rootfs being mounted at /root.

With the absolute symlink of systemd-sysv in place, /sbin/init points
outside the /root directory holding the rootfs, and thus renders the
link target non-existent.

Just updating the /sbin/init symlink to point to a relative path fixes
the issue without side effects:

  /sbin/init -> ../lib/systemd/systemd

Please fix this in the script so systemd can work in all environments
where sysv-init worked!

-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'oldstable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.14-1-amd64 (SMP w/6 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages systemd-sysv depends on:
ii  systemd  204-10

systemd-sysv recommends no packages.

systemd-sysv suggests no packages.

-- no debconf information



More information about the Pkg-systemd-maintainers mailing list