systemd script - kriegs nicht hin

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
hwe
Beiträge: 18
Registriert: 15.02.2009 17:25:49
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Schwaben

systemd script - kriegs nicht hin

Beitrag von hwe » 17.06.2015 22:44:14

Hi,
nach längerem suchen in Foren noch keine Lösung für folgendes Problem:

Nach update von wheezy auf jessie möchte ich mein Shutdown-Script zu systemd konvertieren.
Das Skript soll beim herunterfahren die Samba-Mounts aushängen bevor das WLAN gestoppt wird (bekanntermassen hängt sonst der shutdown-prozess mehrere Minuten).
In wheezy mit SysV war das kein Problem und hat zuverlässig funktioniert.

Ich kriege es mit systemd nicht hin, dass der systemd service started, ich erhalte immer:

Code: Alles auswählen

root@T530:/etc/systemd/system# systemctl status hwe_unmount_cifs.service
● hwe_unmount_cifs.service - Unmount CIFS drive
   Loaded: error (Reason: Invalid argument)
   Active: active (exited) since Mi 2015-06-17 20:37:30 CEST; 1h 58min ago
Jun 17 21:44:44 T530 systemd[1]: hwe_unmount_cifs.service lacks ExecStart s...g.
/etc/systemd/system/hwe_unmount_cifs.service

Code: Alles auswählen

[Unit]
Description=Unmount CIFS drive
After=network.target
Requires=network.target
Before=shutdown.target

[Service]
RemainAfterExit=yes
Type=oneshot
ExecStop=/etc/init.d/hwe_unmount_cifs.sh

[Install]
WantedBy=multi-user.target
/etc/init.d/hwe_unmount_cifs.sh

Code: Alles auswählen

#! /bin/sh

### BEGIN INIT INFO
# Provides:          umount cifs mounts
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:
# Default-Stop:      0 1 6
# Short-Description: umount cifs mounts
# Description:       This file should be used to construct scripts to be
#                    placed in /etc/init.d.
### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# Define LSB log_* functions.
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
# and status_of_proc is working.
. /lib/lsb/init-functions

/bin/echo "Test"
Der Befehl /bin/echo "Test" ist nur zum Testen, später soll dort "umount /myshare ...." stehen.

systemctl daemon-update
systemctl status hwe_unmount_cifs.service
habe ich ausgeführt und o.g. Fehler erhalten.

Was ist denn falsch ?

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: systemd script - kriegs nicht hin

Beitrag von rendegast » 20.06.2015 11:43:37

Jun 17 21:44:44 T530 systemd[1]: hwe_unmount_cifs.service lacks ExecStart s...g.
Vielleicht fehlt ein
'ExecStart=/bin/true'
o.ä.

Code: Alles auswählen

ExecStart=/etc/init.d/hwe_unmount_cifs.sh start
ExecStop=/etc/init.d/hwe_unmount_cifs.sh stop
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Antworten