Verwenden Sie die Option allow_other
in /etc/fstab
ermöglicht anderen Benutzern als dem, der das eigentliche Mounten vornimmt, auf das gemountete Dateisystem zuzugreifen. Wenn Sie Ihr System booten und Ihre sshfs mounten, erfolgt dies durch den Benutzer root anstelle Ihres normalen Benutzers. Wenn Sie allow_other
hinzufügen andere Benutzer als root können auf den Einhängepunkt zugreifen. Dateiberechtigungen unter dem Einhängepunkt bleiben immer noch die gleichen wie früher, wenn Sie also dort ein Verzeichnis mit 0700-Maske haben, ist es für niemanden außer root und dem Besitzer zugänglich.
Also statt
sshfs#[email protected]:/remote/dir /work fuse user,_netdev,reconnect,uid=1000,gid=1000,idmap=user 0 0
verwenden
sshfs#[email protected]:/remote/dir /work fuse user,_netdev,reconnect,uid=1000,gid=1000,idmap=user,allow_other 0 0
Das hat zumindest bei mir ausgereicht. Ich habe dies nicht getestet, indem ich das System gebootet habe, sondern stattdessen einfach den Mount-Befehl als root ausgeführt und dann versucht, als normaler Benutzer auf die gemounteten sshfs zuzugreifen.
Auch zur Ergänzung der vorherigen Antwort:
-
Sie sollten die [user]@[host]-Syntax der sshfs#[user]@[host]-Syntax vorziehen.
-
Stellen Sie sicher, dass Sie Benutzern ohne Rootberechtigung erlauben, die Mount-Option allow_other in /etc/fuse.conf
anzugeben -
Stellen Sie sicher, dass Sie jeden sshfs-Mount mindestens einmal manuell als Root verwenden, damit die Signatur des Hosts zur Datei .ssh/known_hosts hinzugefügt wird.
$ sudo sshfs [user]@[host]:[remote_path] [local_path] -o allow_other,IdentityFile=[path_to_id_rsa]
REF:https://wiki.archlinux.org/index.php/SSHFS