Übersicht

SHFS ist ein Remote-Dateisystem wie z.B. NFS. Der große Vorteil ist jedoch bei shfs die Verschlüsselung, die auf ssh, bzw. OpenSSH basiert, daher der Name s(s)hfs.

Das Kernel-Modul SHFS erlaubt es, unter Linux beliebige entfernte Verzeichnisse via SSH zu mounten und so in das eigene Dateisystem einzubinden. Im Gegensatz zu klassischen Freigaben z.B. per NFS lässt sich mit SHFS jedes entfernte Verzeichnis einbinden, auf das via SSH Zugriff besteht, ohne dass auf Serverseite spezielle Einstellungen vorzunehmen sind.

SHFS läuft unter Linux 2.4 (ab Kernel 2.4.9) und erlaubt es, entfernte Dateisysteme über eine normale Shell-Verbindung zu mounten. Dabei unterstützt SHFS verschiedene Cache-Funktionen, um den Zugriff auf die entfernten Dateisysteme zu beschleunigen.

SHFS basiert dabei weitgehend auf Florin Malitas FTPFS und entstand im Rahmen eines Betriebssystem-Kurses an der Charles University.

/!\ Leider scheint die Entwicklung im Jahre 2004 stehengeblieben zu sein -- es gibt zumindest keine neueren releases. Nun gibt es wieder patches http://atrey.karlin.mff.cuni.cz/~qiq/src/shfs/.

Homepage: http://shfs.sourceforge.net/

Lizenz: GPL

Mini-Howto

Ein super Anleitung befindet sich bei ProLinux. Einen weiteren Artikel findet man bei Linux NetMag. Auf der Homepage gibt es eine FAQ. Natürlich findet man SHFS auch bei Freshmeat. Siehe auch Wikipedia. Ausserdem gibt es Debian-Pakete. Eine mögliche Alternative zu SHFS ist sshfs von LUFS.

Debian

Howto zum installieren unter Debian:

Ohne deb-Paktete

 docx@fuckup:~$ tar xvzf shfs*.tar.gz
 docx@fuckup:~$ cd shfs*
 docx@fuckup:~$ cp Changelog debian/changelog
 docx@fuckup:~$ fakeroot debian/rules binary
 docx@fuckup:~$ dpkg -i shfs*.deb

Debian-Pakete

Quelle: Godot's HowTo: SHFS Debian Woody, Sarge und Sid {en}

sudo apt-get install kernel-headers-`uname -r` fakeroot debhelper
sudo apt-get install shfs-source shfs-utils module-assistant
sudo module-assistant build shfs
sudo module-assistant install shfs
sudo modprobe shfs
sudo su
echo shfs >> /etc/modules
exit

Dies hat bei mir mit Kernel 2.6.8 geklappt. Musste jedoch die Schritte ab module-assistant build shfs wiederholen, da beim ersten Mal noch eine Fehlermeldung kam (dazu einfach den Parameter -f verwenden, damit die bereits angelegte Datei überschrieben wird).

Ubuntu-Pakete

Die Anleitung für Ubuntu ist fast identisch zu der von Debian, nur das Headerpaket wird mit

sudo apt-get install linux-headers-`uname -r`

installiert.

Will man Usern ermöglichen, die "Partition" zu mounten muss man per

sudo chmod u+s /usr/bin/shfsmount

für shfsmount suid root setzen (wenn also ein User shfsmount startet, führt das System diesen Befehl als root aus [wenn der owner von shfsmount root ist]), was natürlich ein Sicherheitsrisiko sein kann.

Tipps & Tricks

Kommt noch ;)

SHFS (zuletzt geändert am 2012-03-04 13:34:38 durch nrbg-4d0770c5)