Automount: различия между версиями
Sinaps (обсуждение | вклад) Нет описания правки |
Yaleks (обсуждение | вклад) мНет описания правки |
||
Строка 4: | Строка 4: | ||
=== 1. создать файл /etc/udev/rules.d/10-local-usb-storage.rules следующего содержания === | === 1. создать файл /etc/udev/rules.d/10-local-usb-storage.rules следующего содержания === | ||
<pre> | |||
SUBSYSTEM!="block", GOTO="end_rule" | SUBSYSTEM!="block", GOTO="end_rule" | ||
KERNEL!="sd[b-z][0-9]", GOTO="end_rule" | KERNEL!="sd[b-z][0-9]", GOTO="end_rule" | ||
Строка 10: | Строка 10: | ||
ACTION=="remove", RUN+="/usr/bin/mount_media %k unplugdev" | ACTION=="remove", RUN+="/usr/bin/mount_media %k unplugdev" | ||
LABEL="end_rule" | LABEL="end_rule" | ||
</pre> | |||
=== 2. создать файл /usr/bin/mount_media === | === 2. создать файл /usr/bin/mount_media === | ||
<pre> | |||
#!/bin/sh | #!/bin/sh | ||
# | # | ||
Строка 69: | Строка 71: | ||
exit 0 | exit 0 | ||
</pre> | |||
=== 3. Все должно работать. (при добавлении скрипта проверить пути) === | === 3. Все должно работать. (при добавлении скрипта проверить пути) === | ||
[[Категория:Udev]] [[Категория:Автомонтирование]] | [[Категория:Udev]] [[Категория:Автомонтирование]] |
Текущая версия от 18:24, 18 октября 2015
Как сделать автомонтирование (после отказа от HAL) с помощью udev и без использования оконных менеджеров
Скрипт нашел на ([1])
1. создать файл /etc/udev/rules.d/10-local-usb-storage.rules следующего содержания
SUBSYSTEM!="block", GOTO="end_rule" KERNEL!="sd[b-z][0-9]", GOTO="end_rule" ACTION=="add", RUN+="/usr/bin/mount_media %k plugdev" ACTION=="remove", RUN+="/usr/bin/mount_media %k unplugdev" LABEL="end_rule"
2. создать файл /usr/bin/mount_media
#!/bin/sh # # License? # # # UUID раздела # #PART_UUID="`/sbin/blkid -o value -s UUID /dev/${1}`" # # LABEL раздела # PART_LABEL=$(/sbin/blkid -p -o value -s LABEL /dev/${1} | /bin/sed 's/ /_/g') # # FS раздела # PART_FS=$(/sbin/blkid -o value -s TYPE /dev/${1}) # # Проверить подключается устройство или отключается? # if [ "$2" = "plugdev" ] then /bin/mkdir /media/${1}.${PART_LABEL} # # Определить, не смонтирован ли уже раздел? # # if [grep -e ${1} -e mount] # then printf Всё смонтировано, я в отбой. && exit 0 case ${PART_FS} in vfat) /bin/echo /dev/${1} /media/${1}.${PART_LABEL} vfat shortname=lower,iocharset=utf8,noatime,users,dmask=000,fmask=111 0 0 >> /etc/fstab /bin/mount /dev/${1} ;; ntfs) /bin/echo /dev/${1} /media/${1}.${PART_LABEL} ntfs-3g relatime,users,dmask=000,fmask=111 0 0 >> /etc/fstab /bin/mount /dev/${1} ;; *) /bin/echo /dev/${1} /media/${1}.${PART_LABEL} auto users 0 0 >> /etc/fstab /bin/mount /dev/${1} ;; esac else /bin/umount -l /dev/${1} /bin/rmdir --ignore-fail-on-non-empty "$(/usr/bin/awk "/${1}/ { print \$2 }" < /etc/fstab)" /bin/sed "/\/dev\/${1}/d" -i /etc/fstab fi exit 0