Dateisystem per SSH
Ich würde gerne einfach und ohne ein zusätzliches Programm von meinem Linux-Rechner aus Daten auf einen SSH-Server übertragen und bearbeiten. Bislang benutze ich dazu einen SFTP-tauglichen Client, der aber etwas umständlich in der Bedienung ist. Geht das vielleicht auch einfacher?
- Reiko Kaps
Ich würde gerne einfach und ohne ein zusätzliches Programm von meinem Linux-Rechner aus Daten auf einen SSH-Server übertragen und bearbeiten. Bislang benutze ich dazu einen SFTP-tauglichen Client, der aber etwas umständlich in der Bedienung ist. Geht das vielleicht auch einfacher?
Zumindest unter Linux lässt sich das mit sshfs machen. Das Userspace-Dateisystem bindet über das SSH File Transfer Protocol (SFTP) ganze Verzeichnisbäume in ein lokales System ein. Es benötigt einen Linux-Kernel, der FUSE (Filesystem in Userspace) unterstützt. Seit Version 2.6.14 gehört FUSE zum offiziellen Kernel und muss nicht mehr nachträglich eingebaut werden. FUSE kann auch als Kernel-Module kompiliert werden und muss, falls es nicht automatisch geladen wird, mit modprobe fuse
durch den Benutzer root nachgeladen werden.
In der aktuellen Ubuntu-Version installiert man sshfs einfach per apt-get install sshfs
. Andere Distributionen wie Debian oder OpenSuse enthalten das Paket auch, erfordern aber möglicherweise etwas mehr Handarbeit bei der Einrichtung. Benutzer, die sshfs aufrufen wollen, müssen der Gruppe fuse angehören, was mit adduser Benutzername fuse nachgeholt werden kann. Dieser Benutzer kann nun mit
sshfs ssh-konto@ssh-server:[Pfad] mount-point
einen SFTP-Zugang an das Verzeichnis „mount-point“ anhängen. Das Programm fragt dabei das Passwort für den SSH-Zugang ab. Mit den Dateien und Verzeichnissen unterhalb von „mount-point“ arbeitet man fast wie mit lokalen Dateien, einzig einige grafische Dateimanager scheinen mit dem sshfs-Dateisystem nicht umgehen zu können. Der Befehl sshfs kennt außerdem noch zahlreiche Optionen, mit denen Parameter wie die Übersetzung der Benutzer-IDs oder das erneute Verbinden zum SSH-Server eingestellt werden können. Den sshfs-Mount wird man mit dem Befehl fusermount -u mount-point
wieder los. (rek)
(rek)