Çıkarılabilir bir cihazın bağlantısına tepki veren sistem bileşeni, SHW tarafından belirtildiği gibi Udev'dir . Udev öğreticisi bile biraz ürkütücü olabilir; Size birkaç örnek göstereceğim.
İki adım söz konusudur: bir aygıt dosyasını (örn. /dev/sdc
) Donanım aygıtıyla ilişkilendirme ve aygıtın dosya sistemine erişmek için bağlanması. Udev'in işi ilk adımdır, ancak bunun gibi harici bir komut çalıştırmasını söyleyebilirsiniz mount
.
Bilinen çıkarılabilir cihazlar için, altında özel bir cihaz adı kullanmayı seviyorum /dev/removable
(bu dizin adı kişisel bir kuraldır). Aşağıdaki udev kuralları (yerleştirilecek /etc/udev/rules.d/my_removable_disks.rules
), her ikisi de bölüm 1'deki dosya sisteminin bir özelliği tarafından tanımlanan iki disk için bilinen adlara sahip sembolik bağlantılar oluşturur:
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"
Eski udev sürümlerinin çağrı yerine ( /udev/lib/vol_id -u %N1
UUID -l
için, etiket için) gerekebilir blkid
. Eşleştirebileceğiniz daha fazla şey vardır, örneğin bir cihazın satıcısı ve seri numarası ile eşleştirmek ATTRS{vendor}=="Yoyodine", ATTRS{serial}=="XYZZY12345PDQ97"
(yerine PROGRAM==…, RESULT==…
).
Sonra şu şekilde bir çizgi kullanabilirsiniz /etc/fstab
:
/dev/removable/joe /media/joe vfat noauto,user
Otomatik montajı tercih ederseniz , RUN="mkdir /media/foo && mount /dev/removable/foo /media/foo"
, udev hattına benzer bir şey ekleyebilirsiniz . umount /media/foo
Fişi prizden çekmeyi unutmayın .