Sshfs: Unterschied zwischen den Versionen
(Übersetzung aus dem englischen Arch-Wiki) |
Dirk (Diskussion | Beiträge) K (→Installation: vorlage:installation) |
||
(12 dazwischenliegende Versionen von 6 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{SEITENTITEL:sshfs}} | |||
Dieser Artikel behandelt die Einrichtung von sshfs. Der Artikel ist eine Übersetzung des englischen Originals, zu finden hier: [http://wiki.archlinux.org/index.php/Sshfs] | Dieser Artikel behandelt die Einrichtung von sshfs. Der Artikel ist eine Übersetzung des englischen Originals, zu finden hier: [http://wiki.archlinux.org/index.php/Sshfs] | ||
== Einleitung == | == 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. | 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 herrausgebracht wurde. | |||
== | {{installation|repo=extra|paket=sshfs}} | ||
== Verwendung == | == Verwendung == | ||
Zuerst sollte das Kernelmodul fuse geladen sein. | Zuerst sollte das Kernelmodul fuse geladen sein. | ||
Also als ''root'': | Also als ''root'': | ||
# modprobe fuse | |||
# 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)) | (Um das Modul automatisch beim booten zu laden kannst du ''fuse'' natürlich auch in die Modul-Liste der /etc/rc.conf eintragen)) | ||
=== Mounten === | === Mounten === | ||
Um ein entferntes Verzeichnis zu mounten verwendest du den Befehl ''sshfs'': | Um ein entferntes Verzeichnis zu mounten verwendest du den Befehl ''sshfs'': | ||
# sshfs USERNAME@HOSTNAME_ODER_IP:/PFAD LOKALER_MOUNT_POINT SSH_OPTIONEN | |||
Zum Beispiel: | Zum Beispiel: | ||
# sshfs sessy@mycomputer:/home/sessy /mnt/sessy -C -p 9876 | # sshfs sessy@mycomputer:/home/sessy /mnt/sessy -C -p 9876 | ||
Wobei 9876 die Portnummer ist. | Wobei 9876 die Portnummer ist. | ||
Zeile 34: | Zeile 34: | ||
=== Aushängen === | === Aushängen === | ||
Um das entfernte System wieder auszuhängen: | Um das entfernte System wieder auszuhängen: | ||
# fusermount -u LOKALER_MOUNT_POINT | |||
Zum Beispiel: | Zum Beispiel: | ||
# fusermount -u /mnt/sessy | # fusermount -u /mnt/sessy | ||
== Tipps == | == Tipps == | ||
Um schnell ein entferntes Verzeichnis zu mounten tu das in ein Skript | Um schnell ein entferntes Verzeichnis zu mounten tu das in ein Skript | ||
sshfs USERNAME@HOSTNAME_OR_IP:/PATH LOCAL_MOUNT_POINT SSH_OPTIONS'' | sshfs USERNAME@HOSTNAME_OR_IP:/PATH LOCAL_MOUNT_POINT SSH_OPTIONS'' | ||
mc ~ LOCAL_MOUNT_POINT | mc ~ LOCAL_MOUNT_POINT | ||
Zeile 45: | Zeile 49: | ||
Das mountet das entfernte Verzeichniss, öffnet den MC und hängt es wieder aus wenn du ihn wieder schließt. | Das mountet das entfernte Verzeichniss, öffnet den MC und hängt es wieder aus wenn du ihn wieder schließt. | ||
Thunar hat Probleme mit FAM und enfernten 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. | Thunar hat Probleme mit FAM und enfernten 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. | ||
Zeile 56: | Zeile 58: | ||
===Connection reset by peer=== | ===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 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 | * Wenn du nicht standardmäßigen Schlüsselnamen verwendest und es auf folgende Weise machen solltest <code>-i .ssh/my_key</code>, wirst du feststellen das es nicht funktioniert. Du musst <code>-o IdentityFile=/home/user/.ssh/my_key</code> mit dem vollen Pfad zum Schlüssel verwenden | ||
* Füge die Option '<code>sshfs_debug</code>' hinzu ('<code>sshfs -o sshfs_debug user@server ...</code>'). Dies kann das Problem eingrenzen. | * Füge die Option '<code>sshfs_debug</code>' hinzu ('<code>sshfs -o sshfs_debug user@server ...</code>'). Dies kann das Problem eingrenzen. | ||
* Wenn du versuchst sshfs in einem Router wie dem DD-WRT (oder Ähnliches)zu betreiben findest du [http://www.dd-wrt.com/wiki/index.php/SFTP_with_DD-WRT hier] die Lösung. | * Wenn du versuchst sshfs in einem Router wie dem DD-WRT (oder Ähnliches)zu betreiben findest du [http://www.dd-wrt.com/wiki/index.php/SFTP_with_DD-WRT hier] die Lösung. | ||
Zeile 63: | Zeile 65: | ||
==fstab== | ==fstab== | ||
Ein Beispiel wie sshfs verwendet werden sollte wenn man es das entfernte Dateisystem über /etc/fstab mounten will | 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 | 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 [http://wiki.archlinux.org/index.php/Using_SSH_Keys verwendest] | Obschon das obere nicht automatisch funktionieren wird, wenn du keinen ssh key für den Benutzer [http://wiki.archlinux.org/index.php/Using_SSH_Keys 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 | 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 '<code>sshfs#</code>' prefix, ändere das Filesystem von '<code>fuse</code>' zu '<code>fuse.sshfs</code>', und erstelle das Skript '<code>/sbin/mount.fuse.sshfs</code>': | ''Anmerkung'' Mit der oberen Methode wird umount zurückgeben, dass das Filesystem nicht in der fstab enthalten ist. Um dies zu umgehen, entferne den '<code>sshfs#</code>' prefix, ändere das Filesystem von '<code>fuse</code>' zu '<code>fuse.sshfs</code>', und erstelle das Skript '<code>/sbin/mount.fuse.sshfs</code>': | ||
#!/bin/bash | #!/bin/bash | ||
Zeile 91: | Zeile 92: | ||
==Siehe auch== | ==Siehe auch== | ||
* [[SSH]] | * [[SSH]] | ||
* [http://wiki.archlinux.org/index.php/SSH SSH im englischsprachigen Arch-Wiki] | |||
* [http://www.raiden.net/articles/arch_linux_sshsshfs_guide/ Arch SSH/SSHFS Guide] | ==Weblinks== | ||
* [http://wiki.archlinux.org/index.php/SSH SSH im englischsprachigen Arch-Wiki] {{sprache|en}} | |||
* [http://www.raiden.net/articles/arch_linux_sshsshfs_guide/ Arch SSH/SSHFS Guide] {{sprache|en}} | |||
[[en:Sshfs]] | |||
[[Kategorie:Netzwerk]] | |||
[[Kategorie:Dateisysteme]] |
Version vom 18. Juni 2013, 01:29 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 herrausgebracht 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 Verzeichniss, öffnet den MC und hängt es wieder aus wenn du ihn wieder schließt.
Thunar hat Probleme mit FAM und enfernten 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"