SSHFS Automount führt ins leere | "mount -a" funktioniert

  • Hallöchen allesamt, :)

    Nachdem ich nun seit einigen Tagen versuche meine Online Storagebox per SSHFS automatisch einbinden zu lassen,

    denke ich, wird es Zeit euch um Rat zu fragen.

    Scheinbar versucht er das Laufwerk einzubinden während die W-LAN Verbindung noch nicht steht.
    Ein _netdev ist jedoch im fstab Eintrag hinterlegt.

    Die FRITZ!Box meldete einen Login um 00:37:12, nachdem /backup versucht wurde einzubinden. (Sofern raspi und fritte von der Zeit synchron sind)


    Hardware & Software Info

    Hardware

    Pi: Raspberry Pi Zero W

    -> Revision : 9000c1, Model : Raspberry Pi Zero W Rev 1.1

    Netzteil: ein Simpler USB Stecker mit einem Micro USB Kabel. (5V 3.0A)

    -> Ja Original Netzteil hier und da, der Pi war bis vor 1-2 Wochen nicht in der Planung wirklich dauerhaft zu laufen.

    Netzwerk: FRITZ!Box 6591 Cable

    Anbindung: 1Gbit/s


    Software

    OS: bullseye

    -> Kernel 5.15.76+

    SSHFS version 3.7.1

    -> FUSE library version 3.10.3

    -> using FUSE kernel interface version 7.31

    -> fusermount3 version: 3.10.3

    Des weiteren ist noch homebridge und pi-hole installiert, raspiBackup ist noch nicht fertig konfiguriert worden.

    syslog

    Jan 29 00:36:30 homebridge systemd[1]: Finished Network Manager Wait Online.

    Jan 29 00:36:30 homebridge systemd[1]: Reached target Network is Online.

    Jan 29 00:36:30 homebridge systemd[1]: Mounting /backup...

    Jan 29 00:36:34 homebridge systemd[1]: backup.mount: Mount process exited, code=exited, status=1/FAILURE

    Jan 29 00:36:34 homebridge systemd[1]: backup.mount: Failed with result 'exit-code'.

    Jan 29 00:36:34 homebridge systemd[1]: Failed to mount /backup.

    Jan 29 00:36:34 homebridge systemd[1]: Dependency failed for Remote File Systems.

    Jan 29 00:36:35 homebridge systemd[1]: remote-fs.target: Job remote-fs.target/start failed with result 'dependency'.

    Detaillierter Log im Anhang Zwecks 50.000 Zeichen Limit.


    Was ist mein Ziel?

    Meine Storagebox von Hetzner in "/backup" einbinden, um darüber die Sicherungen des altbekannten Tools "raspiBackup" von framp laufen zu lassen.
    Dieses versuche ich mittels SSHFS zu lösen.


    Was habe ich bisher versucht?

    /etc/fstab

    Die 2te Zeile von unten hat dafür gesorgt dass mein pi nicht mehr richtig hochgefahren ist, weshalb ich die SD Karte auslesen und die fstab Offline bearbeiten musste.

    Code
    #u295377-sub1@u295377.your-storagebox.de:/ /backup fuse.sshfs comment=sshfs,defaults,transform_symlinks,users,exec,auto,allow_other,_netdev,uid=1000,gid=1000 0 0
    #sshfs#u295377-sub1@u295377.your-storagebox.de:/ /backup fuse defaults,delay_connect,_netdev,allow_other 0 0
    #sshfs#u295377-sub1@u295377.your-storagebox.de:/ /backup fuse defaults,delay_connect,_netdev,noauto,x-systemd.automount 0 0
    #sshfs u295377-sub1@u295377.your-storagebox.de:/ /backup fuse default_permissions,noauto,x-systemd.automount,_netdev,allow_other 0 0
    sshfs#u295377-sub1@u295377.your-storagebox.de:/ /backup fuse uid=1003,gid=100,umask=0,allow_other,_netdev 0 0


    Woher weiß ich überhaupt dass mein fstab Eintrag an sich funktioniert?
    Indem ich mir den Inhalt des Ordners nach dem Reboot ansehe, welcher leer ist.
    Nach der Ausführung von "mount -a" war der Ordner nicht mehr leer, da er angebunden war.


    Hab ich vllt Probleme mit Passwort oder den SSH Keys?
    Ein ausführen von sshfs u295377-sub1@u295377.your-storagebox.de:/ /backup funktionierte tadellos, ohne Eingabe eines Passwortes.
    Der Private key ist in /home/pi/.ssh, als auch in /root/.ssh hinterlegt, beide sind 1 und der gleiche key.
    Die Abfrage zwecks dem RSA key fingerprint der Gegenstelle wurde als Nutzer "pi" und als "root" bestätigt.

    Hier sind die Permissions der keyfiles:

    Code
    drwx------ 2 pi   pi   4096 Jan 27 09:36 .ssh
    pi@homebridge:~ $ ls -l .ssh/
    total 12
    -rw------- 1 pi pi 2602 Jan 27 09:36 id_rsa
    -rw-r--r-- 1 pi pi  567 Jan 27 09:36 id_rsa.pub
    -rw-r--r-- 1 pi pi 1512 Jan 27 09:36 known_hosts
    Code
    drwx------  2 root root 4096 Jan 29 00:00 .ssh
    root@homebridge:~# ls -l .ssh
    total 8
    -rw------- 1 root root 2602 Jan 29 00:00 id_rsa
    -rw-r--r-- 1 root root  884 Jan 29 00:25 known_hosts

    Hätte ich Alternativen als SSHFS?
    WebDAV
    Samba/CIFS
    FTP/S
    SFTP/SCP


    Möchte ich eine andere Alternative als SSHFS?
    Nicht wirklich
    Wenn mir jemand jedoch Sinnvoll erklären kann wieso Option XY besser ist, bin ich für andere Optionen offen.

  • SSHFS Automount führt ins leere | "mount -a" funktioniert? Schau mal ob du hier fündig wirst!

  • Scheinbar versucht er das Laufwerk einzubinden während die W-LAN Verbindung noch nicht steht.

    Was habe ich bisher versucht?

    /etc/fstab

    Die 2te Zeile von unten hat dafür gesorgt dass mein pi nicht mehr richtig hochgefahren ist, ...

    Versuch mal auch mit "x-systemd.device-timeout=30" und "nofail" bei den Optionen in der fstab.

    Wenn das nicht hilft und durch den Eintrag in der fstab, eine mount-unit generiert worden ist, könntest Du diese mount-unit mit einer drop-in-Datei, für das warten auf die W-LAN-Verbindung, in der zuständigen Section ergänzen.

    Code
    Requires=sys-subsystem-net-devices-wlan0.device
    After=sys-subsystem-net-devices-wlan0.device

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • Ich habe mir ein kleines Script geschrieben was ich interaktiv nutze. Vielleicht hilft es Dir :)

    EDIT: Sehe gerade dass Du bei Hetzner bist. Ich auch und da funktioniert das Script perfekt :)

  • Nur nebenbei...

    Die 2te Zeile von unten hat dafür gesorgt dass mein pi nicht mehr richtig hochgefahren ist

    Um so etwas zu verhindern, ist bei Quellen, die nicht fest mit dem System verbunden sind (USB- oder Netz-Laufwerke), immer die Mount-Option nofail eine gute Wahl. Damit bootet das System trotzdem durch, auch wenn die Quelle nicht erreicht wurde oder man versehentlich einen Fehler in die Zeile dieser /etc/fstab eingebaut hat. ;)

  • Nur nebenbei...

    Um so etwas zu verhindern, ist bei Quellen, die nicht fest mit dem System verbunden sind (USB- oder Netz-Laufwerke), immer die Mount-Option nofail eine gute Wahl. Damit bootet das System trotzdem durch, auch wenn die Quelle nicht erreicht wurde oder man versehentlich einen Fehler in die Zeile dieser /etc/fstab eingebaut hat. ;)

    Das Stichwort "nofail" von rpi444 und dir hyle hat mich in die richtige Richtung gelenkt.
    Scheinbar fehlte dem fstab Eintrag nur das Wort "delay_connect", in Verbindung mit "nofail" war es unschlagbar.

    sshfs#u295377-sub1@u295377.your-storagebox.de:/ /backup fuse uid=1003,gid=100,umask=0,allow_other,_netdev,nofail,delay_connect 0 0

    Und was soll man sagen, es funktioniert jetzt! :danke_ATDE:

    Warum das aber zuvor nicht funktionierte, weiß ich nicht.
    Ich gehe davon aus dass es zuvor Probleme mit dem Key oder dessen Berechtigungen gab,
    hatte vor dem erstellen des Threads einmal die Keys neu eingebunden, Berechtigungen neu gesetzt und es nochmals versucht.


    Und framp
    Danke dir für das Skript ^^
    Hierzu hätte ich eine Frage, gibt es einen speziellen Grund dass du hier keinen SSH Key verwendest?


    Nun stellt sich mich nur noch die Frage, ob mein fstab Eintrag denn soweit in Ordnung ist.

    Die Storagebox wird von all meinen Geräten verwendet, Windows, MacOS und Linux.
    Ich hab die Sorge dass ich hier mit uid=1003,gid=100,umask=0 eventuell was an den Berechtigungen zerschieße.

    Die Verbindung sollte dauerhaft bestehen bleiben, indem ich ServerAliveInterval 15 in /home/pi/.ssh/config und /root/.ssh/config gepackt habe.

    Gibt es sonst noch Probleme mit diesem SSHFS mount oder dem fstab Eintrag welche mich in der Zukunft meiner Nerven berauben könnte?

  • Hierzu hätte ich eine Frage, gibt es einen speziellen Grund dass du hier keinen SSH Key verwendest?

    Guter Punkt. Eigentlich nutze ich zum Login auch meinen private key. Ich habe keine Storagebox bei Hetzner sondern einen managed Webspace. Dort habe ich keinen ssh Zugriff und kann keine keys nutzen :(

    Dort lege ich auch keine Backups ab. Den Zugriff brauche ich um raspiBackup zu maintainen.

    Du hast jetzt ja rausgefunden wie es geht :thumbup: Ich probiere gleich mal.

  • Scheinbar fehlte dem fstab Eintrag nur das Wort "delay_connect", in Verbindung mit "nofail" war es unschlagbar.

    Weißt Du evtl. in welcher manpage, die Option "delay_connect" dokumentiert ist?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • Weißt Du evtl. in welcher manpage, die Option "delay_connect" dokumentiert ist?

    Danke dir für die Frage, weiß jetzt selbst was delay_connect eigentlich ist.
    Steht in der man page von sshfs.

    Code
           -o delay_connect
                  Don't immediately connect to server, wait until mountpoint is first accessed.

    Heißt also meine fstab funktioniert auch nur, weil ich ein "ls /backup" ausführe um zu prüfen ob alles klappt.
    Und weil ich eben darauf zugreife, verbindet er sich :lol:

    Rein Theoretisch ist das Okay, da er sich verbindet sobald raspiBackup den Ordner aufruft, dauert halt 1-3 Sekunden.

  • Aber mounten mittels sshfs klappt?

    Versuche mal im root Verzeichnes deines sshfs Nutzers die .ssh/authorized_keys anzulegen

    Hatte ich probiert :) . Danach den Hetznersupport kontaktiert und die sagten mir dass ein managed Server keinen ssh Zugriff hat und deshalb auch keine Keys funktionieren :( Somit bleibt mir nur mit UID/PWD zu arbeiten ...

  • Okay das ist schade :(


    Jetzt noch zu dieser Nachricht von mir, sind diese Fragen geklärt, ist das Thema erledigt :)

    Nun stellt sich mich nur noch die Frage, ob mein fstab Eintrag denn soweit in Ordnung ist.


    Die Storagebox wird von all meinen Geräten verwendet, Windows, MacOS und Linux.
    Ich hab die Sorge dass ich hier mit uid=1003,gid=100,umask=0 eventuell was an den Berechtigungen zerschieße.


    Die Verbindung sollte dauerhaft bestehen bleiben, indem ich ServerAliveInterval 15 in /home/pi/.ssh/config und /root/.ssh/config gepackt habe.


    Gibt es sonst noch Probleme mit diesem SSHFS mount oder dem fstab Eintrag welche mich in der Zukunft meiner Nerven berauben könnte?

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!