====== Automount mit benutzerdefinierten Rechten ====== Wenn man eine externe Festplatte ansteckt, kommt es häufig vor, dass diese automatisch gemounted wird und Rechte gesetzt bekommt, die die sinnvolle Arbeit damit behindern. Um dies zum umgehen, sind ein paar kleine Eingriffe in das System nötig: ===== UDev-Eintrag selbst definieren ===== //UDev// sorgt für die Behandlung von Hotplugging-Events. Dazu arbeitet es die Regeln ab, die in ''/etc/udev/rules.d/'' definiert sind. Dort fügen wir nun unsere eigene Regel ganz zu Beginn der Kette ein, um unsere Platte extra zu behandeln. Zuerst müssen wir dazu herausfinden, wie wir die Platte erkennen können. Dazu stecken wir die Platte an und führen den Befehl ''lsusb -v'' als Root (wichtig!) aus. In der Ausgabe suchen wir nach unserer Platte und dort nach dem Eintrag //iSerial//. Ist dieser nicht vorhanden, müssen wir stattdessen mit //iVendor// oder anderen Erkennungskriterien arbeiten. Der Einfachheit halber nehme ich an, dass //iSerial// existiert. Jetzt erstellen wir eine Datei ''/etc/udev/rules.d/01-usb-custom.rules'' und schreiben in diese folgendes rein: BUS=="usb", KERNEL="sd?1", SYSFS{serial}="01234", SYMLINK+="exthdd", RUN+="/usr/local/bin/automount-exthdd.sh" Zur Erklärung: * Es ist ein USB-Gerät, daher ist //BUS// auf "usb" gesetzt. * Der Kernel legt normalerweise ein Device //sdb// oder ähnlich an. Wir wollen also //sd*1// abfangen und umbiegen. * Jetzt folgt die Idenfitikation des Geräts durch die Seriennummer. Hier natürlich den Wert eintragen, den wir zuvor rausgesucht haben. * Als nächstes definieren wir einen Namen für die Device-Datei, die erzeugt werden soll. * Und zuletzt lassen wir ein Script aufrufen, damit auch wirklich automatisch gemountet wird. ===== Mount-Eintrag erstellen ===== Jetzt müssen wir in ''/etc/fstab'' eine Regel definieren, die festlegt wie unser Gerät ''/dev/exthdd'' gemountet wird. Zuerst erstellen wir ein Verzeichnis ''/media/exthdd'' (oder ''/mnt/exthdd'') und dann fügen wir in ''/etc/fstab'' diese Zeile hinzu: /dev/exthdd /media/exthdd vfat user,auto,uid=1000,gid=1000,iocharset=utf8 0 0 So oder ähnlich. Hier muss natürlich der korrekte Dateisystem-Typ eingetragen werden (''vfat'') und die Optionen entsprechend sinnvoll gewählt werden. Man sollte hier schon wissen, was man tut. :) Details dazu finden sich aber in jedem Mount-Tutorial. ===== Automount-Skript ===== Tja. Und zuletzt müssen wir noch das Script schreiben, das wir in unserer UDev-Regel automatisch aufrufen lassen. Wir erstellen also die Datei ''/usr/local/bin/automount-exthdd.sh'' und schreiben hinein: #!/bin/sh mount /media/exthdd Jetzt nur noch mit ''chmod +x /usr/bin/local/automount-exthdd.sh'' das Script ausführbar machen und schon ist alles fertig. Wenn jetzt die Platte angesteckt wird, sollte sich in ''/dev'' die Datei ''exthdd'' finden und diese sollte in ''/media/exthdd'' eingehängt werden (mit ''mount'' überprüfen!).