Hi Roger,

> Package: insserv
> Version: 1.14.0-4
> Severity: serious
> Tags: patch
> Justification: Breaks boot
> 
> See also:
> #677097
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=677097
> 
> When we added mountall-bootclean to initscripts, I didn't realise
> at the time that the dependencies were insufficient, and $local_fs
> requires mountall-bootclean to be run, or it can be mis-ordered
> and delete /run.
> 
> The attached patch fixes up insserv to add mountall-bootclean to
> $local_fs.  I've included the change to both debian/patches and
> to insserv.conf so you can apply whatever you feel best.
> 
> Flagged as serious since this does prevent systems from booting.
> I'm going to also make the change to sysvinit to add
> X-Start-Before: bootmish.sh to mountall_bootclean
> but it would be good to have it here as well to make it less
> easy to break your system.

Thanks for the patch, I've committed the following, when I make it available
on mentors (this evening) would you be willing to check & upload?

Kel
---
Index: debian/changelog
===================================================================
--- debian/changelog    (revision 1080)
+++ debian/changelog    (revision 1081)
@@ -1,3 +1,12 @@
+insserv (1.14.0-5) unstable; urgency=low
+
+  * Add +mountall-bootclean to $local_fs virtual facility definition in
+    insserv.conf. (Closes: #693371)
+  * Add test_bootmisc_order test to suite to verify the mountall-bootclean
+    dependency works as expected.
+
+ -- Kel Modderman <k...@otaku42.de>  Sun, 18 Nov 2012 11:55:44 +1000
+
 insserv (1.14.0-4) unstable; urgency=low
 
   * Provide machine parseable output which may be used by file-rc to calculate
Index: debian/patches/11_debian_conf.patch
===================================================================
--- debian/patches/11_debian_conf.patch (revision 1080)
+++ debian/patches/11_debian_conf.patch (revision 1081)
@@ -9,7 +9,7 @@
  # All local filesystems are mounted (done during boot phase)
  #
 -$local_fs     boot.localfs +boot.crypto
-+$local_fs     +mountall +mountoverflowtmp +umountfs
++$local_fs     +mountall +mountall-bootclean +mountoverflowtmp +umountfs
  
  #
  # Low level networking (ethernet card)
Index: debian/run-testsuite
===================================================================
--- debian/run-testsuite        (revision 1080)
+++ debian/run-testsuite        (revision 1081)
@@ -2358,7 +2358,61 @@
 rm -f ${tmpdir}/rc.conf
 }
 ##########################################################################
+test_bootmisc_order() {
+echo
+echo "info: mountall-bootclean.sh must start before bootmisc.sh"
+echo
 
+initdir_purge
+
+set +C
+cat <<'EOF' > $insconf
+$local_fs       +mountall +mountall-bootclean
+$remote_fs      $local_fs
+EOF
+set -C
+
+initdir_purge
+
+insertscript mountall.sh <<'EOF'
+### BEGIN INIT INFO
+# Provides:          mountall
+# Required-Start:
+# Required-Stop:
+# Default-Start:     S
+# Default-Stop:
+### END INIT INFO
+EOF
+
+insertscript mountall-bootclean.sh <<'EOF'
+### BEGIN INIT INFO
+# Provides:          mountall-bootclean
+# Required-Start:    mountall
+# Required-Stop:
+# Default-Start:     S
+# Default-Stop:
+### END INIT INFO
+EOF
+
+insertscript bootmisc.sh <<'EOF'
+### BEGIN INIT INFO
+# Provides:          bootmisc
+# Required-Start:    $remote_fs
+# Required-Stop:
+# Default-Start:     S
+# Default-Stop:
+### END INIT INFO
+EOF
+
+list_rclinks
+
+check_order S mountall.sh mountall-bootclean.sh
+check_order S mountall-bootclean.sh bootmisc.sh
+
+update_conf
+}
+##########################################################################
+
 test_normal_sequence
 test_override_files
 test_override_loop
@@ -2401,3 +2455,4 @@
 test_undetected_loop           # 2 non-fatal tests failing
 test_invalid_core_string
 test_show_all
+test_bootmisc_order


-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to