PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : systemctl - customizing unit files



pibi
29.03.14, 09:50
Hallo zusammen

Mein System: openSuSI 13.1

Nach meinem anfaenglichen Widerstand gegen den neuen systemctl versuche ich, mich mit diesem Teil anzufreunden. Die Gelegenheit ist nun da;-)

Ich habe den bacula-Client installiert, aber er startet nicht. Die Fehlermeldung ist eindeutig:
Failed to issue method call: Unit syslog.target failed to load: No such file or directory.Soweit, so gut. Da syslog.target anscheinend
obsolete (http://opensuse.14.x6.nabble.com/reminder-for-systemd-services-do-not-use-syslog-target-anymore-td4991467.html) ist, habe ich kurzerhand in dem originalen File bacula-fd.service die entsprechenden Abhaengigkeiten geloescht. Neu gestartet, funktioniert. Da aber beim naechsten Update dieses File ueberschrieben wird, wollte ich den "sauberen" Weg gehen.

So wie hier (https://wiki.archlinux.org/index.php/systemd) beschrieben ist, kann man einzelne Services anpassen. Dazu habe ich ein File /etc/systemd/system/bacula-fd.service.d/customdependency.conf angelegt mit folgendem Inhalt:
[Unit]
Requires=
After=
Requires=var-run.mount nss-lookup.target network.target remote-fs.target time-sync.target
After=var-run.mount nss-lookup.target network.target remote-fs.target time-sync.targetWie man sieht, wird das File beim Neustart des Services auch gefunden, aber die neuen Requires- und After-Direktiven werden ignoriert:
pit:/etc/systemd/system/bacula-fd.service.d # systemctl status bacula-fd.service
bacula-fd.service - Bacula File Daemon service
Loaded: loaded (/lib/systemd/system/bacula-fd.service; enabled)
Drop-In: /etc/systemd/system/bacula-fd.service.d
└─customdependency.conf
Active: failed (Result: exit-code) since Sat 2014-03-29 10:13:48 CET; 29min ago
Main PID: 8524 (code=exited, status=15)

Mar 29 10:02:58 pit systemd[1]: Unit bacula-fd.service entered failed state.
Mar 29 10:02:58 pit systemd[1]: Starting Bacula File Daemon service...
Mar 29 10:02:58 pit systemd[1]: Started Bacula File Daemon service.
Mar 29 10:13:48 pit systemd[1]: Stopping Bacula File Daemon service...
Mar 29 10:13:48 pit bacula-fd[8524]: Shutting down Bacula service: pit-fd ...
Mar 29 10:13:48 pit systemd[1]: bacula-fd.service: main process exited, code=exited, status=15/n/a
Mar 29 10:13:48 pit systemd[1]: Stopped Bacula File Daemon service.
Mar 29 10:13:48 pit systemd[1]: Unit bacula-fd.service entered failed state.
pit:/etc/systemd/system/bacula-fd.service.d # Die Fehlermeldung bleibt gleich:-( Wie geht es richtig? Wie kann ich definieren, dass syslog.target keine Voraussetzung fuer den Start von bacula-fd ist?

Gruss Pit.





ist

pibi
29.03.14, 14:27
Nachtrag:

cp -av /lib/systemd/system/bacula-fd.service /etc/systemd/system
vim /etc/systemd/system/bacula-fd.service # anpassen der Requires etc.
systemctl daemon-reload
systemctl restart bacula-fd.serviceDies funktioniert zwar, aber der Bezug zum originalen File geht leider verloren. Ich moechte ja nur die zwei Zeilen "Requires" und "After" aendern. Laut Doku muesste das doch moeglich sein, oder?

Gruss Pit.

pibi
30.03.14, 09:15
Nachtrag 2:
Da bisher keine Antwort kam, habe ich mir erlaubt, diese Frage auch hier (http://www.suseforum.de/index.php/Thread/10931-systemctl-customizing-unit-files/) zu stellen. Vielleicht hat ja Rain_Maker eine Idee;-))

Gruss Pit.