sshfs mount mit systemd

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
Alternativende
Beiträge: 2091
Registriert: 07.07.2006 18:32:05

sshfs mount mit systemd

Beitrag von Alternativende » 28.09.2016 09:35:40

Hallo zusammen,
ich stehe wiedereinmal vor einem größeren Problem und hoffe auf eure Hilfe.

Ich muss bei einem Backupserver (Stretch) beim booten per sshfs ein Verzeichnis mounten (/var/lib/bareos/storage, das Backupverzeichnis vom NAS). Bisher habe ich das bequem über die fstab gemacht, scheinbar funktioniert dies aber nun nicht mehr reibungslos. Bareos startet nicht mehr beim booten wenn sein Backupverzeichnis nicht vorher gemountet worden ist. Ich bekomme das Fehlermeldungen und Bareos läuft nicht hoch.

Nun habe ich mir gedacht ich mache das ganze einfach mit systemd und einem Service, folgendes habe ich dafür angelegt.

Code: Alles auswählen

# cat /lib/systemd/system/sshfs.service 
[Unit]
Description=SSHFS-Mount
After=network-online.target
Requires=network-online.target

[Service]
ExecStart=/usr/local/src/sshfs.sh

[Install]
WantedBy=multi-user.target

Code: Alles auswählen

cat /usr/local/src/sshfs.sh
# !/bin/sh
/usr/bin/sshfs root@nas:/media/2cb5ca83-f142-476a-a036-bb7505a76283/Bareos/ /var/lib/bareos/storage -o uid=34 -o gid=34 -o ServerAliveInterval=15 -o allow_other -o nonempty  -o cache=yes -o kernel_cache -o compression=no
Von Hand ausgeführt läuft das Skript prima und mountet mir das Verzeichnis anstandslos dahin wo es hin soll. Nun bekomme ich aber folgende Fehlermeldung:

Code: Alles auswählen

● sshfs.service - SSHFS-Mount
   Loaded: loaded (/lib/systemd/system/sshfs.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Mi 2016-09-28 09:26:43 CEST; 3min 57s ago
  Process: 1880 ExecStart=/usr/local/src/sshfs.sh (code=exited, status=203/EXEC)
 Main PID: 1880 (code=exited, status=203/EXEC)

Sep 28 09:26:43 systemd[1]: Started SSHFS-Mount.
Sep 28 09:26:43 systemd[1]: sshfs.service: Main process exited, code=exited, status=203/EXEC
Sep 28 09:26:43 systemd[1]: sshfs.service: Unit entered failed state.
Sep 28 09:26:43  systemd[1]: sshfs.service: Failed with result 'exit-code'.

Irgendwas habe ich falsch gemacht, nur was?

Edit:
Den ersten Fehler habe ich gefunden und auch hier korrigiert, es muss #!/bin/sh - im Skript sshfs.sh heißen, dann startet systemd es auch.

Das Problem jetzt ist nur das er zwar sagt es sei gestartet aber das Verzeihnis trotzdem nicht gemountet ist. Startet es vielleicht immer noch zu früh?


Edit2:
Ich habe es nach der Skriptanpassung noch mal mit der fstab probiert, erst wollte es nicht starten, aber scheinbar war der Ordner storage noch irgendwie gemountet, trotz Reboot. Nach einem umount und einem erneuten Reboot hat er das Verzeichnis wieder verbunden und Bareos startet ordentlich hoch.

Also erst mal Entwarnung :D
Zuletzt geändert von Alternativende am 07.12.2020 08:41:26, insgesamt 1-mal geändert.

Benutzeravatar
MSfree
Beiträge: 10752
Registriert: 25.09.2007 19:59:30

Re: sshfs mount mit systemd

Beitrag von MSfree » 28.09.2016 10:02:29

Vielleicht solltest du noch unter [Service] folgende Zeilen anhängen:

Code: Alles auswählen

[Service]
Type=oneshot
RemainAfterExit=yes

Antworten