[opensuse-packaging] Failing packages due missing Stop tags in boot scripts
Hi, for all those who have faling package due missing Required-Stop and/or Should-Stop tags: Required-Stop: is for services which must still be available during the shutdown of the service. Should-Stop: is for services which should still be available during the shutdown of the service. You may rename this in mind to Required-(During-)Stop and Should-(During-)Stop to have a mnemonic. Any other interpretation is simply wrong, compare with <http://refspecs.freestandards.org/LSB_3.2.0/LSB-Core-generic/LSB-Core-generic/initscrcomconv.html> The special facility `$null' is only for enforcing an empty dependency in Required-Stop and Should-Stop otherwise insserv assumes the same dependencies as for the Start case. This is done to be able to support foreign and third party boot scripts. Beside this the old tags X-SuSE-Should-Start X-SuSE-Should-Stop X-UnitedLinux-Should-Start X-UnitedLinux-Should-Stop are obsolete since LSB 2.0 and have to be replaced with the LSB tags Should-Start Should-Stop To enforce clean scripts, an LSB header may have the following tags Provides Required-Start Required-Stop Default-Start to be fully functional. If the tag Should-Start is used also the tag Should-Stop has to be used. The tag Default-Stop is optional on openSuSE whereas the tags Short-Description Description should be used and filled with text to have a description around in the runlevel editors. The Debian/openSuSE vendor tags X-Start-Before X-Stop-After implies that the script using the keyword X-Start-Before should be started before the specified service names respectively that the script using the keyword X-Stop-After should be stopped after the specified service names. Beside this it is possible to use a LSB header for third party boot scripts without editing them. For this only a file with the LSB header therein and the same name as the foreign boot script has to placed in /usr/share/insserv/overrides/ or to overwrite a LSB header of a third party script it is possible to place an replacment LSB header with the same file name in /etc/insserv/overrides/ Werner -- Dr. Werner Fink <werner@suse.de> SuSE LINUX Products GmbH, Maxfeldstrasse 5, Nuernberg, Germany GF: Markus Rex, HRB 16746 (AG Nuernberg) phone: +49-911-740-53-0, fax: +49-911-3206727, www.opensuse.org ------------------------------------------------------------------ "Having a smoking section in a restaurant is like having a peeing section in a swimming pool." -- Edward Burr --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
Hi Werner, very good info. Thanks! Peter -- "WARNING: This bug is visible to non-employees. Please be respectful!" SUSE LINUX Products GmbH Research & Development
Hi, it seems that there are many developers out there which have misunderstood the term if intended use `$null' Normally the special system facility `$null' should only be used if the you really want an empty Required-Stop and/or Should-Stop tag. In other words the most developers may *not* want to use `$null'. E.g. if in Required-Start the system facility `$user_fs' is found then it is a bug to use `$null' in Required-Stop case. The same holds true for Should-Start and Should-Stop. Most users want to use for Required-Stop the same system facilities and other provides as found in Required-Start. The same holds true for Should-Stop. There are some cases in which `$null' makes sense, e.g. if in the Start case provides are used which simply do nothing in stop case. Werner -- Dr. Werner Fink <werner@suse.de> SuSE LINUX Products GmbH, Maxfeldstrasse 5, Nuernberg, Germany GF: Markus Rex, HRB 16746 (AG Nuernberg) phone: +49-911-740-53-0, fax: +49-911-3206727, www.opensuse.org ------------------------------------------------------------------ "Having a smoking section in a restaurant is like having a peeing section in a swimming pool." -- Edward Burr --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Monday 18 August 2008 15:33:03 Dr. Werner Fink wrote:
Hi,
it seems that there are many developers out there which have misunderstood the term
if intended use `$null'
Normally the special system facility `$null' should only be used if the you really want an empty Required-Stop and/or Should-Stop tag. In other words the most developers may *not* want to use `$null'.
Just to underline this: anything that has it's binaries below /usr will at least need $remote_fs during start _and_ stop. (otherwise for example killproc would not find the binary it wants to kill and fail to stop the service ...)
E.g. if in Required-Start the system facility `$user_fs' is found then it is a bug to use `$null' in Required-Stop case. The same holds true for Should-Start and Should-Stop.
Most users want to use for Required-Stop the same system facilities and other provides as found in Required-Start. The same holds true for Should-Stop.
There are some cases in which `$null' makes sense, e.g. if in the Start case provides are used which simply do nothing in stop case.
-- with kind regards (mit freundlichem Grinsen), Ruediger Oertel (ro@novell.com,ro@suse.de,bugfinder@t-online.de) ---------------------------------------------------------------------- Linux Fatou 2.6.26-14-default #1 SMP 2008-08-08 13:52:24 +0200 x86_64 Key fingerprint = 17DC 6553 86A7 384B 53C5 CA5C 3CE4 F2E7 23F2 B417 SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG Nürnberg) --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
participants (3)
-
Dr. Werner Fink
-
Peter Poeml
-
Ruediger Oertel