Bug#642961: systemd: debian-fixup.service goes berserk in /run, breaks boot
Package: systemd Version: 36-1 Followup-For: Bug #642961 Dear Maintainer, oneshot should be a good answer . Ie it will break at first shot only but still break. Using the internals of initscripts /lib/init/mount-functions.sh run_migrate should do the trick. The offending lines that cause debian-fixup to break are: # If both directories are the same, we don't need to do # anything further. sold=$(/usr/bin/stat -L --format=%d %i $OLD 2/dev/null || :) srun=$(/usr/bin/stat -L --format=%d %i $RUN 2/dev/null || :) if [ -n $sold ] [ $sold = $srun ]; then return 0 fi Here: /usr/bin/stat -L --format=%d %i /var/lock 14 5912 /usr/bin/stat -L --format=%d %i /run/lock/ 14 5912 cat /proc/mounts |grep lock tmpfs /var/lock tmpfs rw,nosuid,relatime,size=717012k,mode=755 0 0 cat /proc/mounts |grep run tmpfs /run tmpfs rw,nosuid,relatime,size=717012k,mode=755 0 0 ls -ld /var/lock drwxrwxrwt 6 root root 180 sept. 29 13:51 /var/lock ls -ld /run/lock/ drwxrwxrwt 6 root root 180 sept. 29 13:51 /run/lock/ I do not know how I ended up with /var/lock and /run/lock behing the same though syncing with run_migrate (or plain removing the /var/lock and /var/run from debian-fixup as debian already has those managed and fixed) would be great. Best regards, Alban -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 3.1.0-rc6test0-00067-gddc34e9 (SMP w/2 CPU cores) Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages systemd depends on: ii initscripts 2.88dsf-13.11 ii libacl1 2.2.51-3 ii libaudit0 1.7.18-1 ii libc6 2.13-21 ii libcap2 1:2.22-1 ii libcryptsetup1 2:1.3.0-3 ii libdbus-1-3 1.5.8-1 ii libpam0g1.1.3-4 ii libselinux1 2.1.0-1 ii libsystemd-daemon0 36-1 ii libsystemd-login0 36-1 ii libudev0172-1 ii libwrap07.6.q-21 ii udev172-1 ii util-linux 2.19.1-5 Versions of packages systemd recommends: ii libpam-systemd 36-1 Versions of packages systemd suggests: ii python 2.6.7-3 ii systemd-gui 36-1 -- no debconf information -- debsums errors found: debsums: changed file /lib/systemd/debian-fixup (from systemd package) -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#642961: systemd: debian-fixup.service goes berserk in /run, breaks boot
]] Alban Browaeys | oneshot should be a good answer . Ie it will break at first shot only | but still break. Why would it break? Cheers, -- Tollef Fog Heen UNIX is user friendly, it's just picky about who its friends are -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#642961: systemd: debian-fixup.service goes berserk in /run, breaks boot
]] Eckhart Wörner | However, this seems to break on /var/run already being bind-mounted on | /run. The condition holds, and therefore /run (aka /var/run) is wiped | out, breaking the boot process. Can you see if the attached patch fixes this? diff --git a/debian/debian-fixup.service b/debian/debian-fixup.service index 5b391db..6848466 100644 --- a/debian/debian-fixup.service +++ b/debian/debian-fixup.service @@ -6,5 +6,5 @@ DefaultDependencies=no [Service] ExecStart=/lib/systemd/debian-fixup -Type=simple +Type=oneshot RemainAfterExit=true Cheers, -- Tollef Fog Heen UNIX is user friendly, it's just picky about who its friends are -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#642961: systemd: debian-fixup.service goes berserk in /run, breaks boot
Package: systemd Version: 36-1 Severity: grave Justification: renders package unusable The debian-fixup script uses: if [ ! -L /var/run ]; then rm -rf /var/run ln -s /run /var/run fi However, this seems to break on /var/run already being bind-mounted on /run. The condition holds, and therefore /run (aka /var/run) is wiped out, breaking the boot process. -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: i386 (i686) Kernel: Linux 3.0.0-1-686-pae (SMP w/2 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 depends on: ii initscripts 2.88dsf-13.11 ii libacl1 2.2.51-3 ii libaudit0 1.7.18-1 ii libc6 2.13-21 ii libcap2 1:2.22-1 ii libcryptsetup1 2:1.3.0-3 ii libdbus-1-3 1.4.16-1 ii libpam0g1.1.3-3 ii libselinux1 2.1.0-1 ii libsystemd-daemon0 36-1 ii libsystemd-login0 36-1 ii libudev0172-1 ii libwrap07.6.q-21 ii udev172-1 ii util-linux 2.19.1-5 Versions of packages systemd recommends: ii libpam-systemd 36-1 Versions of packages systemd suggests: pn python 2.6.7-3 pn systemd-gui none -- no debconf information -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org