Bug#590744: Fails to boot if /sbin/init is a symlink
Package: initramfs-tools
Version: 0.97.2
Severity: normal
Hi,
for testing purposes, I installed the upstart binary as /sbin/upstart and
created a symlink /sbin/init → /sbin/upstart
This causes a boot failure, due to this check in /usr/share/initramfs-
tools/init
# Check init bootarg
if [ -n "${init}" ] && [ ! -x "${rootmnt}${init}" ]; then
echo "Target filesystem doesn't have ${init}."
init=
fi
To quote Mithrandir (from irc):
<Mithrandir> -x follows symlinks
<Mithrandir> but that means it'll look for symlinks in the initramfs, so the
check is buggy.
Kernel: Linux 2.6.32-5-686 (SMP w/1 CPU core)
Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages initramfs-tools depends on:
ii cpio 2.11-4 GNU cpio -- a program to manage ar
ii findutils 4.4.2-1 utilities for finding files--find,
ii klibc-utils 1.5.18-1 small utilities built with klibc f
ii module-init-tools 3.12-1 tools for managing Linux kernel mo
ii udev 160-1 /dev/ and hotplug management daemo
Versions of packages initramfs-tools recommends:
ii busybox 1:1.15.3-1 Tiny utilities for small and embed
Versions of packages initramfs-tools suggests:
ii bash-completion 1:1.2-2 programmable completion for the ba
--
To UNSUBSCRIBE, email to debian-kernel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 20100728231301.2145.53668.reportbug@pluto.milchstr asse.xx">http://lists.debian.org/20100728231301.2145.53668.reportbug@pluto.milchstr asse.xx
07-28-2010, 11:37 PM
Michael Prokop
Bug#590744: Fails to boot if /sbin/init is a symlink
* Michael Biebl <biebl@debian.org> [Thu Jul 29, 2010 at 01:13:01AM +0200]:
> for testing purposes, I installed the upstart binary as /sbin/upstart and
> created a symlink /sbin/init → /sbin/upstart
> This causes a boot failure, due to this check in /usr/share/initramfs-
> tools/init
> # Check init bootarg
> if [ -n "${init}" ] && [ ! -x "${rootmnt}${init}" ]; then
> echo "Target filesystem doesn't have ${init}."
> init=
> fi
> To quote Mithrandir (from irc):
> <Mithrandir> -x follows symlinks
> <Mithrandir> but that means it'll look for symlinks in the initramfs, so the
> check is buggy.
You shouldn't use an absolut symlink here, use a relative one instead.
See Debian policy 10.5 for details.