Package: redhat-cluster-suite Version: 2.20080801-1 Severity: important Tags: patch User: initscripts-ng-de...@lists.alioth.debian.org Usertags: incorrect-runlevels incorrect-dependency
With dependency based boot sequencing, I discovered what I believe is a bug in the init.d scripts. The provide strings are not correct, making it impossible to depend on these scripts and also will make the package fail to install because of duplicate provides. The provides header make each space-separated word a provide of the script, and should normally be the name of the init.d script without any .sh ending. Also, some of the scripts uses files in /usr/ and should to depend on $remote_fs to flag this. The list of runlevels in the init.d header do not match the arguments used by update-rc.d, but I am not sure the original update-rc.d arguments make sense. When starting the scripts in rcS.d, and not in runlevels 2-5, the daemons will not work when booting into runlevel 1 and then switching to one of the other runlevels. If you agree with this, I would recommend changing these daemons to start not in rcS.d but in runlevels 2-5, and stop in runlevels 0, 1 and 6 (ie keep the init.d script headers and change the update-rc.d calls instead). This will require some code in the postinst to handle the upgrade. <URL: http://refspecs.freestandards.org/LSB_2.1.0/LSB-generic/LSB-generic/initscrcomconv.html > documents the LSB header format. Some debian notes are available from <URL: http://wiki.debian.org/LSBInitScripts >. This patch should solve the issue. Without it, the packages will fail to install. diff -ru redhat-cluster-2.20081102/debian/cman.init redhat-cluster-2.20081102-pere/debian/cman.init --- redhat-cluster-2.20081102/debian/cman.init 2009-08-17 07:35:15.000000000 +0200 +++ redhat-cluster-2.20081102-pere/debian/cman.init 2009-08-17 07:40:41.000000000 +0200 @@ -1,13 +1,13 @@ #!/bin/sh ### BEGIN INIT INFO -# Provides: cluster manager +# Provides: cman # Required-Start: $network $remote_fs # Required-Stop: $network $remote_fs # Should-Start: $named $time $syslog ssh # Should-Stop: $named $time $syslog ssh -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 +# Default-Start: S +# Default-Stop: 0 6 # Short-Description: Starts and stops cman ### END INIT INFO diff -ru redhat-cluster-2.20081102/debian/gfs-tools.init redhat-cluster-2.20081102-pere/debian/gfs-tools.init --- redhat-cluster-2.20081102/debian/gfs-tools.init 2009-08-17 07:35:15.000000000 +0200 +++ redhat-cluster-2.20081102-pere/debian/gfs-tools.init 2009-08-17 07:40:49.000000000 +0200 @@ -1,11 +1,11 @@ #!/bin/sh ### BEGIN INIT INFO -# Provides: global filesystem -# Required-Start: cman -# Required-Stop: cman -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 +# Provides: gfs-tools +# Required-Start: $remote_fs cman +# Required-Stop: $remote_fs cman +# Default-Start: S +# Default-Stop: 0 6 # Short-Description: mount and unmount GFS shares ### END INIT INFO diff -ru redhat-cluster-2.20081102/debian/gfs2-tools.init redhat-cluster-2.20081102-pere/debian/gfs2-tools.init --- redhat-cluster-2.20081102/debian/gfs2-tools.init 2009-08-17 07:35:15.000000000 +0200 +++ redhat-cluster-2.20081102-pere/debian/gfs2-tools.init 2009-08-17 07:40:57.000000000 +0200 @@ -1,11 +1,11 @@ #!/bin/sh ### BEGIN INIT INFO -# Provides: global filesystem version 2 +# Provides: gfs2-tools # Required-Start: cman # Required-Stop: cman -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 +# Default-Start: S +# Default-Stop: 0 6 # Short-Description: mount and unmount GFS v2 shares ### END INIT INFO diff -ru redhat-cluster-2.20081102/debian/gnbd-client.init redhat-cluster-2.20081102-pere/debian/gnbd-client.init --- redhat-cluster-2.20081102/debian/gnbd-client.init 2009-08-17 07:35:15.000000000 +0200 +++ redhat-cluster-2.20081102-pere/debian/gnbd-client.init 2009-08-17 07:41:05.000000000 +0200 @@ -1,11 +1,11 @@ #! /bin/sh ### BEGIN INIT INFO -# Provides: global network block device client -# Required-Start: $network -# Required-Stop: $network -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 +# Provides: gnbd-client +# Required-Start: $remote_fs $network +# Required-Stop: $remote_fs $network +# Default-Start: S +# Default-Stop: 0 6 # Short-Description: start and stop gnbd client ### END INIT INFO diff -ru redhat-cluster-2.20081102/debian/gnbd-server.init redhat-cluster-2.20081102-pere/debian/gnbd-server.init --- redhat-cluster-2.20081102/debian/gnbd-server.init 2009-08-17 07:35:15.000000000 +0200 +++ redhat-cluster-2.20081102-pere/debian/gnbd-server.init 2009-08-17 07:41:13.000000000 +0200 @@ -1,11 +1,11 @@ #! /bin/sh ### BEGIN INIT INFO -# Provides: global network block device server -# Required-Start: $network -# Required-Stop: $network -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 +# Provides: gnbd-server +# Required-Start: $remote_fs $network +# Required-Stop: $remote_fs $network +# Default-Start: S +# Default-Stop: 0 6 # Short-Description: start and stop the gnbd server ### END INIT INFO diff -ru redhat-cluster-2.20081102/debian/rgmanager.init redhat-cluster-2.20081102-pere/debian/rgmanager.init --- redhat-cluster-2.20081102/debian/rgmanager.init 2009-08-17 07:35:15.000000000 +0200 +++ redhat-cluster-2.20081102-pere/debian/rgmanager.init 2009-08-17 07:40:28.000000000 +0200 @@ -1,13 +1,13 @@ #!/bin/sh ### BEGIN INIT INFO -# Provides: cluster service manager -# Required-Start: cman -# Required-Stop: cman +# Provides: rgmanager +# Required-Start: $remote_fs cman +# Required-Stop: $remote_fs cman # Should-Start: clvm gfs-tools gfs2-tools # Should-Stop: clvm gfs-tools gfs2-tools -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 +# Default-Start: S +# Default-Stop: 0 6 # Short-Description: start and stop the cluster service manager ### END INIT INFO Happy hacking, -- Petter Reinholdtsen -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org