Bug 18497 - univention-lib functionality for service management
univention-lib functionality for service management
Status: RESOLVED WONTFIX
Product: UCS
Classification: Unclassified
Component: univention-lib
UCS 2.3
Other Linux
: P5 enhancement (vote)
: ---
Assigned To: Bugzilla Mailingliste
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2010-05-27 08:47 CEST by Philipp Hahn
Modified: 2014-02-18 21:37 CET (History)
3 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional): Cleanup
Max CVSS v3 score:


Attachments
Use invoke-rc.d (94.97 KB, patch)
2011-10-21 20:44 CEST, Philipp Hahn
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Philipp Hahn univentionstaff 2010-05-27 08:47:40 CEST
Anstatt direkt die Init-Skripte "/etc/init.d/$SERVICE $ACTION" aus Join-, {pre,post}{inst,rm}- und anderen Skripten aufzurufen, sollte statt dessen "invoke-rc.d $SERVICE $ACTION" benutzt werden. Dieser aus Debian stammende Wrapper erlaubt es per "/usr/sbin/policy-rc.d" eigene Policies zu definieren, wann z.B. Aktionen nicht oder alternative Aktionen ausgeführt werden sollen.
Insbesondere bei chroot-Installationen vereinfacht dies das ungewollte Starten von Diensten während der Installation und ermöglich auch einfachere Testinstallationen.

# gfind -l '/etc/init.d/.*[[:space:]]\(start\|stop\|c\?restart\|reload\)' | wc -l
467
Comment 1 Philipp Hahn univentionstaff 2011-10-21 20:44:35 CEST
Created attachment 3669 [details]
Use invoke-rc.d

grep -E '^[^'\''"]*/etc/init.d/[[:alnum:].-]+[[:space:]]+(force-|c)?(start|stop|restart|reload)'
Comment 2 Philipp Hahn univentionstaff 2011-10-31 14:42:02 CET
Die durchgängige Verwendung von invoke-rc.d würde es uns auch ermöglichen, das deaktivieren des Apache2- und UMC-Neustarts während eines Updates sauber zu unterbinden: Per /usr/sbin/policy-rc.d könnte man dann einfach ein "exit 0" zurückliefern, solang ein Update-Vorgang läuft.
Bei der derzeitigen Technik kann es passieren, das dem Apache2 oder dem UMC-Server nach einem fehlgeschlagenen Update die Ausführungsrechte fehlen.
Comment 3 Stefan Gohmann univentionstaff 2011-10-31 15:04:46 CET
(In reply to comment #2)
> Die durchgängige Verwendung von invoke-rc.d würde es uns auch ermöglichen, das
> deaktivieren des Apache2- und UMC-Neustarts während eines Updates sauber zu
> unterbinden: Per /usr/sbin/policy-rc.d könnte man dann einfach ein "exit 0"
> zurückliefern, solang ein Update-Vorgang läuft.
> Bei der derzeitigen Technik kann es passieren, das dem Apache2 oder dem
> UMC-Server nach einem fehlgeschlagenen Update die Ausführungsrechte fehlen.

Setzt aber voraus, dass das auch alle anderen Pakete invoke-rc.d verwenden. Bei einem Update werden ja auch potentiell andere / nicht Debian Pakete aktualisiert.
Comment 4 Janek Walkenhorst univentionstaff 2013-06-25 15:08:47 CEST
There should be an univention-lib function to wrap the invoke-rc.d functionality.
That way different systems ("service" on Ubuntu) can be handled by only adapting univention-lib.

The Dev-Guide should then be changed to recommend usage of these functions instead of /etc/init.d or invoke-rc.d.
Comment 5 Stefan Gohmann univentionstaff 2014-02-18 21:37:46 CET
This issue has been filed against UCS 2.3.

UCS 2.3 is out of maintenance and many UCS components have vastly changed in
later releases. Thus, this issue is now being closed.

If this issue still occurs in newer UCS versions, please use "Clone this bug".
In this case please provide detailed information on how this issue is affecting
you.