LINUX.ORG.RU

автомонтирование через udev


0

0

Хочу настроить автомонтирование карточек памяти через udev. При подключении карт-ридера в системе появляются устройства /dev/sd[b-f], что соответствует каждому типу карт, те прописать правила в udev казалось бы, проще простого, например: при действии add устройства /dev/sdb1 смонтировать его в /media/CF (CompactFlash), соответственно при действии remove этого sdb1 размонтировать и удалить каталог /media/CF.

Но вот в чем проблема: если я вставляю карту в ридер, то вижу в udevadm monitor действие add, после этого вытаскиваю карту и вижу действие remove, а если вставить карту смонтировать ее (udev'ом или вручную) и вытащить без размонтирования, то действия remove нет, только change, и устройство /dev/sdb1 остается.

Как побороть эту проблему?

Пробовал дистрибутив с гномом, тот прекрасно размонтирует устройство при его извлечении, видимо там работает hal?


Ответ на: комментарий от psyX

Да, там еще хал, кажется. Я почему про udisks вспомнил, udisks --monitor показывает и add и remove, даже если тупо дернуть. А вот как он это делает - не знаю, можно в исходниках глянуть, он небольшой. А вот здесь на основе udisks склепали автомаунтер простой, там же есть ссылка на вики, где монтируют udevом.

vga ★★
()
Ответ на: комментарий от vga

Да, там еще хал, кажется.

Поправка: Нет, таки там уже не хал, там udisks, только он тогда еще назывался devicekit-disks, переименовали чуть позже.

vga ★★
()
Ответ на: комментарий от vga

попробуем udisks, как раз недавно систему обновил.

но все, же вопрос открыт, почему нет действия remove в udev при выдергивании носителя когда он смонтированном ?

psyX
() автор топика
Ответ на: комментарий от vga

Ну и соответственно у удева есть udevadm monitor --property, может и там что-то видно будет. К сожалению, у меня CF нет, поэтому точнее ничего сказать не могу. ,

vga ★★
()
Ответ на: комментарий от TuxR

попробую с sd, может это так работает CF.

я так понимаю что udisks просто повторяет действия udev, только с фильтрацией по дискам )

да именно по тому примеру с арчвики и делал. но нет действия remove, при вытаскивании смонтированной карты ((( пробовал на двух арчах.

psyX
() автор топика
Ответ на: комментарий от psyX

вот что происходит при выдергивании карты из картридера:

KERNEL[1282076439.005381] change /devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/host5/target5:0:0/5:0:0:0 (scsi) UDEV_LOG=0 ACTION=change DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/host5/target5:0:0/5:0:0:0 SUBSYSTEM=scsi SDEV_MEDIA_CHANGE=1 DEVTYPE=scsi_device DRIVER=sd MODALIAS=scsi:t-0x00 SEQNUM=1765

KERNEL[1282076439.007321] change /devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/host5/target5:0:0/5:0:0:0/block/sdb (block) UDEV_LOG=0 ACTION=change DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/host5/target5:0:0/5:0:0:0/block/sdb SUBSYSTEM=block DEVNAME=sdb DEVTYPE=disk SEQNUM=1766 MAJOR=8 MINOR=16

UDEV [1282076439.007514] change /devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/host5/target5:0:0/5:0:0:0 (scsi) UDEV_LOG=0 ACTION=change DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/host5/target5:0:0/5:0:0:0 SUBSYSTEM=scsi SDEV_MEDIA_CHANGE=1 DEVTYPE=scsi_device DRIVER=sd MODALIAS=scsi:t-0x00 SEQNUM=1765

UDEV [1282076439.088263] change /devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/host5/target5:0:0/5:0:0:0/block/sdb (block) UDEV_LOG=0 ACTION=change DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/host5/target5:0:0/5:0:0:0/block/sdb SUBSYSTEM=block DEVNAME=/dev/sdb DEVTYPE=disk SEQNUM=1766 ID_VENDOR=Generic ID_VENDOR_ENC=Generic\x20 ID_VENDOR_ID=05e3 ID_MODEL=STORAGE_DEVICE-A ID_MODEL_ENC=STORAGE\x20DEVICE-A ID_MODEL_ID=0716 ID_REVISION=9727 ID_SERIAL=Generic_STORAGE_DEVICE-A_000000009727-0:0 ID_SERIAL_SHORT=000000009727 ID_TYPE=disk ID_INSTANCE=0:0 ID_BUS=usb ID_USB_INTERFACES=:080650: ID_USB_INTERFACE_NUM=00 ID_USB_DRIVER=usb-storage ID_PATH=pci-0000:00:1d.7-usb-0:1:1.0-scsi-0:0:0:0 UDISKS_PRESENTATION_NOPOLICY=0 MAJOR=8 MINOR=16 DEVLINKS=/dev/block/8:16 /dev/disk/by-id/usb-Generic_STORAGE_DEVICE-A_000000009727-0:0 /dev/disk/by-path/pci-0000:00:1d.7-usb-0:1:1.0-scsi-0:0:0:0

psyX
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.