Linux – Automatisation mit USB

Wie kann ich nun sicherstellen, das mein USB-Stick (oder eine USB
-Platte) immer unter /media/Backup zur Verfügung steht? Nun, da muss man schon etwas genauer hinsehen, aber ich verspreche, das Ergebnis ist beeindruckend.
Wenn ein USB-Device eingesteckt wird aktiviert sich ein Udev-Management. Diesem kann man sagen, das genau dieser USB-Stick immer als /dev/backup benutzbar sein soll. Zunächst schaust du als root mit dem Kommando lsusb, welche USB-Devices momentan am System bekannt sind:

uk@uk-laptop:~$ sudo lsusb
[sudo] password for uk:
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 007: ID 0951:1613 Kingston Technology DataTraveler DT101C Flash Drive

Offensichtich gibt es ein Device 007, welches ein Flash Drive ist. Das kann bei einem anderen Stick natürlich anders aussehen.
Das Device 007 sehen wir uns genauer an:
Zunächst wird lsusb mit -v (verbose) aufgerufen und die Ausgabe des Kommandos in die Datei /tmp/lsusb_v.txt umgeleitet. Dann wird diese Datei mit einem Editor in einem neuen Fenster im Hintergrund aufgerufen.

sudo lsusb -v > /tmp/lsusb_v.txt
gedit /tmp/lsusb_v.txt &

In dem neuen Editorfenster haben wir Detailinfos zum gesamten USB-System des Rechner. Wir suchen nun unser Device, indem wir Strg-F drücken. Ein Suchfenster öffnet. Dort tragen wir ein: Device 007. Automatisch rollt der Editor die Datei zu unserem Device weiter.
Die Serien-Nummer suchen.

Ein Eigenschaftsfeld des Devices ist iSerial, die Serien-Nummer. Bei mir ist das: 000D603E1672SK8818130412. Die führende, durch ein Blank abgesetze Ziffer ignorieren wir. Dann erzeugen wir eine Udev-Regel. Spannend? Nein, einfach folgendes tun:

cd /etc/udev/rules.d
gedit 07-udevsicherungsstick.rules &

Ein leeres Editorfenster öffnet sich. Wir fügen folgende zwei Zeilen ein:

# USB-Festplatte für Backups
BUS=="usb", KERNEL=="sd?1",SYSFS{serial}=="000D603E1672SK8818130412",SYMLINK+="backup",RUN+="/home/uk/sicher.sh"

Du erkennst natürlich sofort die Serien-Nummer, die wir oben mühsam ermittelt habe. Hier musst du deine Serien-Nummer einsetzen. Damit diese Definition aktiv wird laden wir die udev-Regeln neu in:

sudo /etc/init.d/udev reload

/dev/backup /media/Backup auto users,atime,noauto,rw,nodev,exec,nosuid 0 0

Schau dir die fstab mal an, Erläuterungen bekommst Du mit:

man 5 fstab

Unser Script benötigt jetzt noch eine Zeile:

mount /media/Backup

muss am Anfang des Scripts, vor dem tar-Kommando eingefügt werden. Damit schaut der Kernel in /etc/fstab, und weiß, das er /dev/backup zuordnen muss. /dev/backup ist in der Udev-Regel über die Seriennummer unserem Stick zugeordnet. Dann kann das tar-Kommando sein Archiv auf /media/Backup (den USB-Stick) schreiben und die Generationen pflegen.
Was ist daran beeindruckend?
Die Anleitung für das Backup lautet:

Schliesse den USB-Stick an den Rechner an.

Alles weitere funktioniert vollkommen automatisch.

Did you like this? Share it:
Dieser Beitrag wurde unter Allgemein, Kommandozeile, Linux, Virtualisierung veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.