[Debian-ha-maintainers] Bug#549603: openais-legacy: Incorrect init.d script dependencies and runlevels

Petter Reinholdtsen pere at hungry.com
Sun Oct 4 18:50:11 UTC 2009


Package:  openais-legacy
Version:  0.80.5+svn20090320-1
Severity: serious
Tags:     patch
User:     initscripts-ng-devel at lists.alioth.debian.org
Usertags: incorrect-dependency incorrect-runlevels

With dependency based boot sequencing, I discovered what I believe is
a bug in the init.d scripts of this package.  The scripts uses files
in /usr/ and should depend on $remote_fs.  Also, the header do not
specify that the script should start in runlevels 2 and 4.

This patch should solve the issue, and recover systems hit by the
incorrect runlevel settings.  Setting severity to serious, the script
will fail to start in the default runlevel.

diff -ur openais-legacy-0.80.5+svn20090522/debian/openais-legacy.init openais-legacy-0.80.5+svn20090522-pere/debian/openais-legacy.init
--- openais-legacy-0.80.5+svn20090522/debian/openais-legacy.init     2009-10-04 20:17:41.000000000 +0200
+++ openais-legacy-0.80.5+svn20090522-pere/debian/openais-legacy.init        2009-10-04 20:21:47.000000000 +0200
@@ -13,12 +13,12 @@
 # Description: openais cluster services.
 # Short-Description: openais cluster services.
 # Provides: openais
-# Required-Start: $network
-# Should-Start: $syslog
-# Required-Stop: $network
-# Default-Start: 3 5
-# Default-Stop: 0 6
-# Should-Stop: $null
+# Required-Start: $network $remote_fs
+# Required-Stop:  $network $remote_fs
+# Should-Start:   $syslog
+# Should-Stop:    $syslog
+# Default-Start:  2 3 4 5
+# Default-Stop:   0 1 6
 ### END INIT INFO

 do_force=0
diff -ur openais-legacy-0.80.5+svn20090522/debian/openais-legacy.postinst openais-legacy-0.80.5+svn20090522-pere/debian/openais-legacy.postinst
--- openais-legacy-0.80.5+svn20090522/debian/openais-legacy.postinst 2009-10-04 20:17:41.000000000 +0200
+++ openais-legacy-0.80.5+svn20090522-pere/debian/openais-legacy.postinst    2009-10-04 20:32:16.000000000 +0200
@@ -5,4 +5,16 @@
 addgroup --system ais
 adduser --system ais --ingroup ais

+# Those using dependency based boot sequencing and installing
+# openais-legacy before version 0.80.5+svn20090522-1 would miss
+# the runlevel 2 and 4 start symlinks.  Recover from this.
+if [ "$1" = "configure" ] \
+   && dpkg --compare-versions "$2" le "0.80.5+svn20090522-1" \
+   && [ ! -f /etc/rc2.d/S[0-9][0-9]openais-legacy ] \
+   && [ -f /etc/rc3.d/S[0-9][0-9]openais-legacy ] \
+   && [ -f /etc/rc5.d/S[0-9][0-9]openais-legacy ]
+then
+   update-rc.d -f openais-legacy remove
+fi
+
 #DEBHELPER#

Happy hacking,
-- 
Petter Reinholdtsen





More information about the Debian-ha-maintainers mailing list