Недавно зашел на wiki.archlinux.org.
Нашел преинтереснейшую страничку про udev.
На основе неё написал свои правила и скрипты автомонтирования.
В /mnt создается директория с лабелем флешки, и в нее монтируется.
Может и боян - как нынче говорят, но надеюсь кому-нибудь поможет.
Файл sda.rules ложим в /etc/udev/rules.d/
Скрипты auto_mount и auto_umount ложим в /etc/udev/scripts ,
делаем их загрузочными и перезагружаем правила udev
Названия флешек начинаются с sdb - если у вас нет sata винчестера нужно переправить на sda.
У кого драйвер ntfs-3g надо поменять опцию монтирования c ntfs на ntfs-3g соответственно.
sda.rules
Код: Выделить всё
KERNEL=="sd[b-z]", NAME="%k", SYMLINK+="usb%m", GROUP="users", OPTIONS="last_rule"
ACTION=="add", KERNEL=="sd[b-z][0-9]", SYMLINK+="usb%n", GROUP="users", NAME="%k"
ACTION=="add", KERNEL=="sd[b-z][0-9]", RUN+="/etc/udev/scripts/auto_mount /dev/%k",OPTIONS="last_rule"
ACTION=="remove", KERNEL=="sd[b-z][0-9]", RUN+="/etc/udev/scripts/auto_umount %k",OPTIONS="last_rule"auto_mount
Код: Выделить всё
#!/bin/bash
VOL_NAME=`/lib/udev/vol_id -l $1`
FS_TYPE=`/lib/udev/vol_id -t $1`
if [ -e /mnt/$VOL_NAME ]
then echo /dev/null
else mkdir /mnt/$VOL_NAME
fi
case "$FS_TYPE" in
"vfat") mount -t vfat -o rw,sync,noauto,quiet,nodev,nosuid,noexec,noatime,dmask=000,fmask=111,iocharset=k
oi8-r $1 /mnt/$VOL_NAME;;
"ntfs") mount -t ntfs -o rw,sync,noauto,nodev,nosuid,noexec,noatime,dmask=000,fmask=111,nls=koi8-r $1 /mnt/$VOL_NAME;;
* ) mount -t auto -o rw,sync,noauto,quiet,nodev,nosuid,noexec,noatime,dmask=000,fmask=111 $1 /mnt/$VOL_NAME
esacauto_umount
Код: Выделить всё
#!/bin/bash
DEV_NAME=$1
MTAB_STR=(`cat /etc/mtab|grep $DEV_NAME`)
umount ${MTAB_STR[1]}
rmdir ${MTAB_STR[1]}