ich möchte beim Systemstart automatisiert NAS-Freigaben verbinden. Dazu habe ein Script unter /root/nas_mount.sh
Code: Alles auswählen
#!/bin/bash
#
# description: Mountet / Dismountet die NAS-Targets
#
start() {
logger "Verbinde NAS-Freigaben: "
mount /buffalo_veeam
mount /qnap_veeam
logger "NAS-Freigaben wurden verbunden"
}
stop() {
logger "Entferne NAS-Freigaben: "
umount /buffalo_veeam
umount /qnap_veeam
logger "NAS-Freigaben wurden entfernt"
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
echo "Status aller NAS-Freigaben: "
mount | grep buffalo_veeam
mount | grep qnap_veeam
;;
restart|reload|condrestart)
stop
start
;;
*)
echo $"Usage: $0 {start|stop|restart|reload|status}"
exit 1
esac
exit 0
Code: Alles auswählen
[Unit]
Description=NAS-Freigaben verbinden
After=network.service
[Service]
Type=oneshot
ExecStart=/root/nas_mount.sh start
ExecStop=/root/nas_mount.sh stop
[Install]
WantedBy=multi-user.target
- systemctl start nas_mount -> Freigaben werden verbunden und sofort wieder getrennt. Pragmatisch ausgedrückt sieht es so aus, als wenn ExecStop unmittelbar nach ExecStart ausgeführt wird
- systemctl stop nas_mount -> Hier wird mein Script gar nicht erst aufgerufen
Wo liegt der Fehler?
Gruß,
Jörg
Edit: Ich habe gerade festgestellt, dass ich das Verhalten mit RemainAfterExit=true hinter dem ExecStart korrigieren kann. In dem Fall stellt sich allerdings noch die Frage, ob ich den Type in diesem Fall auf oneshot oder eher auf simple stelle...