Sshfs: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
K Link zu anderssprachigen Wikis |
||
Zeile 97: | Zeile 97: | ||
* [http://www.raiden.net/articles/arch_linux_sshsshfs_guide/ Arch SSH/SSHFS Guide] {{sprache|en}} | * [http://www.raiden.net/articles/arch_linux_sshsshfs_guide/ Arch SSH/SSHFS Guide] {{sprache|en}} | ||
[[Kategorie:Netzwerk]] | [[Kategorie:Netzwerk]] | ||
[[Kategorie:Dateisysteme]] | [[Kategorie:Dateisysteme]] | ||
[[en:SSHFS]] | |||
[[es:SSHFS]] | |||
[[fr:Sshfs]] | |||
[[ja:Sshfs]] | |||
[[ru:SSHFS]] | |||
[[zh-hans:SSHFS]] |
Version vom 13. Oktober 2020, 21:06 Uhr
Dieser Artikel behandelt die Einrichtung von sshfs. Der Artikel ist eine Übersetzung des englischen Originals, zu finden hier: [1]
Einleitung
sshfs kann verwendet werden um eine Partition auf einem entfernten Rechner über das ssh-Protokoll so zu mounten, dass sie als ein lokaler Ordner erscheint. So wird es möglich alle Werkzeuge zu verwenden die man auch auf seine lokalen Dateien anwenden kann. sshfs sollte gegenüber shfs bevorzugt werden, da seit 2004 kein neues Release von shf herausgebracht wurde.
Installation
Das Programm ist als
sshfs
in extra
verfügbar, und kann von dort
mittels Pacman
installiert werden.
Verwendung
Zuerst sollte das Kernelmodul fuse geladen sein. Also als root:
# modprobe fuse
(Um das Modul automatisch beim booten zu laden kannst du fuse natürlich auch in die Modul-Liste der /etc/rc.conf eintragen))
Mounten
Um ein entferntes Verzeichnis zu mounten verwendest du den Befehl sshfs:
# sshfs USERNAME@HOSTNAME_ODER_IP:/PFAD LOKALER_MOUNT_POINT SSH_OPTIONEN
Zum Beispiel:
# sshfs sessy@mycomputer:/home/sessy /mnt/sessy -C -p 9876
Wobei 9876 die Portnummer ist.
Bevor du dich verbindest solltest du auch darauf achten, die Berechtigungen für alle Clientordner richtig einzustellen, die du von einem entfernten Rechner aus mounten willst. Was bedeutet, dass root nicht der Besitzer sein sollte!
SSH wird dich nach dem Benutzerpasswort fragen. Wenn du das Passwort nicht ständig neu eingeben willst lies das: How to Use RSA Key Authentication with SSH.
Aushängen
Um das entfernte System wieder auszuhängen:
# fusermount -u LOKALER_MOUNT_POINT
Zum Beispiel:
# fusermount -u /mnt/sessy
Tipps
Um schnell ein entferntes Verzeichnis zu mounten tu das in ein Skript
sshfs USERNAME@HOSTNAME_OR_IP:/PATH LOCAL_MOUNT_POINT SSH_OPTIONS mc ~ LOCAL_MOUNT_POINT fusermount -u LOCAL_MOUNT_POINT
Das mountet das entfernte Verzeichnis, öffnet den MC und hängt es wieder aus wenn du ihn wieder schließt.
Thunar hat Probleme mit FAM und entfernten Verzeichnissen. Wenn er die entfernten Ordner nicht anzeigen sollte oder andere Probleme damit auftauchen sollten, dann ersetze einfach fam durch gamin. Gamin ist eine Weiterentwicklung von fam.
pacman -S gamin vim /etc/rc.conf #entferne fam unter DEAMONS
Problembehebung
Connection reset by peer
- Wenn du versucht hast die Verbindung mit dem Hostnamen aufzubauen versuche es über die IP, da es ein Problem mit dem Domainnamen sein kann. Stelle sicher, dass der Server in der Datei /etc/hosts eingetragen ist.
- Wenn du nicht standardmäßigen Schlüsselnamen verwendest und es auf folgende Weise machen solltest
-i .ssh/my_key
, wirst du feststellen das es nicht funktioniert. Du musst-o IdentityFile=/home/user/.ssh/my_key
mit dem vollen Pfad zum Schlüssel verwenden - Füge die Option '
sshfs_debug
' hinzu ('sshfs -o sshfs_debug user@server ...
'). Dies kann das Problem eingrenzen. - Wenn du versuchst sshfs in einem Router wie dem DD-WRT (oder Ähnliches)zu betreiben findest du hier die Lösung.
- Forum thread: sshfs: Connection reset by peer
fstab
Ein Beispiel wie sshfs verwendet werden sollte wenn man es das entfernte Dateisystem über /etc/fstab mounten will
sshfs#USERNAME@HOSTNAME_OR_IP:/REMOTE/DIRECTORY /LOCAL/MOUNTPOINT fuse defaults 0 0
Obschon das obere nicht automatisch funktionieren wird, wenn du keinen ssh key für den Benutzer verwendest
Wenn du sshfs für mehrere Benutzer des Systems verwenden willst:
sshfs#user@domain.org:/home/user /media/user fuse defaults,allow_other 0 0
Anmerkung Mit der oberen Methode wird umount zurückgeben, dass das Filesystem nicht in der fstab enthalten ist. Um dies zu umgehen, entferne den 'sshfs#
' prefix, ändere das Filesystem von 'fuse
' zu 'fuse.sshfs
', und erstelle das Skript '/sbin/mount.fuse.sshfs
':
#!/bin/bash DEVICE="$1" MOUNTPOINT="$2" OPTIONS="$4" OPTIONS="${OPTIONS/,noauto/}" OPTIONS="${OPTIONS/,user/}" # workaround to conflicting 'user' options # in fstab, specify 'login=joe' instead of 'user=joe' OPTIONS="${OPTIONS/,login=/,user=}" exec /usr/bin/sshfs "$DEVICE" "$MOUNTPOINT" -o "$OPTIONS"