Składnikiem systemu, który reaguje na połączenie urządzenia wymiennego, jest Udev , jak wspomniano w SHW . Nawet samouczek udev może być nieco zniechęcający; Pokażę ci kilka przykładów.
Istnieją dwa etapy: skojarzenie pliku urządzenia (np. /dev/sdc
) Z urządzeniem sprzętowym i zamontowanie urządzenia w celu uzyskania dostępu do systemu plików. Zadanie Udev jest pierwszym krokiem, chociaż możesz mu powiedzieć, aby uruchomił zewnętrzne polecenie, takie jak mount
.
W przypadku znanych urządzeń wymiennych lubię używać dedykowanej nazwy urządzenia pod /dev/removable
(ta nazwa katalogu to osobista konwencja). Następujące reguły udev (do umieszczenia /etc/udev/rules.d/my_removable_disks.rules
) tworzą dowiązania symboliczne o znanych nazwach dla dwóch dysków, z których oba są identyfikowane przez właściwość systemu plików na ich partycji 1:
KERNEL=="sd?", PROGRAM=="/sbin/blkid -o value -s UUID %N1", RESULT=="1234-5678", SYMLINK+="removable/foo"
KERNEL=="sd?", PROGRAM=="/sbin/blkid -o value -s LABEL %N1", RESULT=="Joe's disk", SYMLINK+="removable/joe"
Starsze wersje udev mogą wymagać /udev/lib/vol_id -u %N1
(dla UUID, -l
dla etykiety) zamiast blkid
wywołania. Jest więcej rzeczy, które możesz dopasować, np. ATTRS{vendor}=="Yoyodine", ATTRS{serial}=="XYZZY12345PDQ97"
(Zamiast PROGRAM==…, RESULT==…
), aby dopasować dostawcę urządzenia i numer seryjny.
Następnie możesz użyć takiej linii w /etc/fstab
:
/dev/removable/joe /media/joe vfat noauto,user
Jeśli wolisz automatyczne montowanie, możesz dodać coś podobnego , RUN="mkdir /media/foo && mount /dev/removable/foo /media/foo"
do linii udev. Nie zapomnij o tym umount /media/foo
przed odłączeniem.