Automount

Wenn man Netzwerk-Shares benutzt, ist es selten sinnvoll, diese Shares staendig zu verbinden. Schlauer waere es doch, wenn man sie nur dann verbinden wuerde, wenn sie gebraucht werden. Und genau das leistet ''autofs''. Die Einrichtung geht flott von der Hand, wenn man weiss wie.

Installieren von autofs mit dem Paketmanagement der eigenen Distribution.

So einrichten, dass es automatisch startet, beispielsweise mit rc-update add autofs, bei Debian und Ubuntu ist nichts zu tun.

Ein Verzeichnis erstellen, unter dem die Shares eingebunden werden sollen, bei mir mkdir /ext.

Danach die eigentliche Konfiguration:

In die /etc/autofs/auto.master (bei Debian und Ubuntu /etc/auto.master) folgende Zeile einfuegen:

/ext   /etc/autofs/auto.misc    --timeout=300 --ghost

Fuer Debian und Ubuntu /etc/auto.misc, es kann aber auch eine beliebige andere Datei sein. timeout=300 sorgt fuer einen umount nach 300 Sekunden Inaktivitaet und ghost sorgt dafür, dass die Verzeichnisse auch sichtbar sind, wenn sie nicht gemountet wurden.

In die /etc/autofs/auto.misc bzw. /etc/auto.misc kommen jetzt die ganzen Shares, die eingebunden werden sollen. In den Dateien finden sich bereits einige Beispiele, ich zeige das hier einmal exemplarisch für eine cifs-Share:

share -fstype=cifs,credentials=/root/credentials,nounix  ://host/sharename

share ist der Name des Verzeichnisses unter /ext, wohin die Einbindung erfolgen soll. Nach einem Tab (oder ein paar Leerzeichen) folgt das Filesystem mit den Optionen, die gebraucht werden und wieder ein paar Leerzeichen (oder ein Tab) spaeter die Informationen des anbietenden Rechners.

/root/credentials erstellen mit folgendem Inhalt:

username=value
password=value
workgroup=value

Falls keine Workgroup bekannt ist einfach „workgroup“ benutzen oder eventuell sogar den Parameter weglassen.

Nach einem Neustart von autofs gibt es einen virtuellen Ordner /ext/share und erst beim Wechsel in das Verzeichnis wird der Mount ausgeführt. 300 Sekunden nachdem kein Prozess mehr auf Dateien dort zugreift, wird das Verzeichnis wieder ausgehaengt.

So richtig interessant wird das in Verbindung mit FUSE (Filesystem in Userspace), da denke ich insbesondere an sshfs, davfs2 oder ftpfs. Es gibt eine sehr grosse Anzahl von Netzwerkdateisystemen, die von FUSE unterstuetzt werden.

Ich beschreibe hier das Vorgehen mit sshfs, da es das komplizierteste ist.

Zuerst muessen wir testen, ob der User root (!) in der Lage ist per ssh auf die Gegenseite zuzugreifen.

ssh ich@ziel.domain.tld

Sollte das nicht klappen, muss die ~/.ssh/config des root-Users angepasst werden. Meist reicht ein Eintrag, um den Key festzulegen, mit dem zugegriffen werden soll.

Host ziel
  HostName ziel.domain.tld
  User ich
  IdentityFile /home/ich/.ssh/id_rsa

Jetzt funktioniert ein ssh ziel.

Der Eintrag in die auto.misc muss erstellt und der Service autofs neu gestartet werden.

mntpoint -fstype=fuse,rw,uid=1000,gid=1000,allow_other :sshfs\#ich@ziel.domain.tld\:/pfad/zum/verzeichnis

Im Wiki von ubuntu.com stehen noch einige weitere gute Erlaeuterungen.

Gerade, wenn man - beispielsweise als Webentwickler - auf vielen entfernten Systemen arbeitet, ist das eine echte Erleichterung. Beim Wechsel in das entsprechende Verzeichnis wird es eingebunden und, wenn man fertig mit der Arbeit ist, auch wieder ausgehaengt.

Zurück zur Uebersicht