Общая тема, по-моему, для всех версий Ubuntu (у меня сейчас свежеустановленная 11.04).
Есть правило в /etc/udev/rules.d/75-mount.rules
SUBSYSTEM=="block", KERNEL=="/devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0", ACTION=="add", ENV{ID_FS_LABEL}!="", RUN+="/bin/sed -i '\/dev\/sr0/d' /etc/fstab", RUN+="/bin/sed -i '$a\/dev\/sr0 \/mnt\/cdrom auto ro,auto,uhelper=udev,iocharset=utf8 0 0' /etc/fstab"
SUBSYSTEM=="block", KERNEL=="/devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0", ACTION=="remove", ,RUN+="/bin/sed -i '\/dev/sr0/d' /etc/fstab"
Если я чего-нибудь понимаю в udev, то должна быть немедленная реакция на изменения статуса лотка привода. Но этого не происходит (в данном случае - запись в /etc/fstab), зато происходит это при перезагрузке, и если в этот момент болванки в приводе нет, то система и в дальнейшем считает, что привод пуст, хотя udevadm test видит правильно, осторожно длинный лог:
$ udevadm test /devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0
run_command: calling: test
udevadm_test: version 167
This program is for debugging only, it does not run any program,
specified by a RUN key. It may show incorrect results, because
some values may be different, or not available at a simulation run.
parse_file: reading '/lib/udev/rules.d/40-fuse-utils.rules' as rules file
parse_file: reading '/lib/udev/rules.d/40-gnupg.rules' as rules file
parse_file: reading '/lib/udev/rules.d/40-hplip.rules' as rules file
parse_file: reading '/lib/udev/rules.d/40-ia64.rules' as rules file
parse_file: reading '/lib/udev/rules.d/40-libgphoto2-2.rules' as rules file
parse_file: reading '/lib/udev/rules.d/40-libsane.rules' as rules file
parse_file: reading '/lib/udev/rules.d/40-ppc.rules' as rules file
parse_file: reading '/lib/udev/rules.d/40-usb-media-players.rules' as rules file
parse_file: reading '/lib/udev/rules.d/40-usb_modeswitch.rules' as rules file
parse_file: reading '/lib/udev/rules.d/40-xserver-xorg-video-intel.rules' as rules file
parse_file: reading '/lib/udev/rules.d/42-qemu-usb.rules' as rules file
parse_file: reading '/lib/udev/rules.d/45-fuse.rules' as rules file
parse_file: reading '/lib/udev/rules.d/45-libmtp8.rules' as rules file
parse_file: reading '/lib/udev/rules.d/50-firmware.rules' as rules file
parse_file: reading '/lib/udev/rules.d/50-udev-default.rules' as rules file
parse_file: reading '/lib/udev/rules.d/55-dm.rules' as rules file
parse_file: reading '/lib/udev/rules.d/56-hpmud_support.rules' as rules file
parse_file: reading '/lib/udev/rules.d/60-cdrom_id.rules' as rules file
parse_file: reading '/lib/udev/rules.d/60-floppy.rules' as rules file
parse_file: reading '/lib/udev/rules.d/60-persistent-alsa.rules' as rules file
parse_file: reading '/lib/udev/rules.d/60-persistent-input.rules' as rules file
parse_file: reading '/lib/udev/rules.d/60-persistent-serial.rules' as rules file
parse_file: reading '/lib/udev/rules.d/60-persistent-storage-dm.rules' as rules file
parse_file: reading '/lib/udev/rules.d/60-persistent-storage-tape.rules' as rules file
parse_file: reading '/lib/udev/rules.d/60-persistent-storage.rules' as rules file
parse_file: reading '/lib/udev/rules.d/60-persistent-v4l.rules' as rules file
parse_file: reading '/lib/udev/rules.d/61-gnome-bluetooth-rfkill.rules' as rules file
parse_file: reading '/lib/udev/rules.d/61-mobile-action.rules' as rules file
parse_file: reading '/lib/udev/rules.d/61-persistent-storage-edd.rules' as rules file
parse_file: reading '/lib/udev/rules.d/64-xorg-xkb.rules' as rules file
parse_file: reading '/lib/udev/rules.d/66-xorg-synaptics.rules' as rules file
parse_file: reading '/lib/udev/rules.d/69-xorg-vmmouse.rules' as rules file
parse_file: reading '/lib/udev/rules.d/69-xserver-xorg-input-wacom.rules' as rules file
parse_file: reading '/lib/udev/rules.d/70-acl.rules' as rules file
parse_file: reading '/lib/udev/rules.d/70-hid2hci.rules' as rules file
parse_file: reading '/etc/udev/rules.d/70-persistent-cd.rules' as rules file
add_rule: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/70-persistent-cd.rules:8
add_rule: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/70-persistent-cd.rules:9
add_rule: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/70-persistent-cd.rules:10
add_rule: SYSFS{}= will be removed in a future udev version, please use ATTR{}= to match the event device, or ATTRS{}= to match a parent device, in /etc/udev/rules.d/70-persistent-cd.rules:11
parse_file: reading '/etc/udev/rules.d/70-persistent-net.rules' as rules file
parse_file: reading '/lib/udev/rules.d/70-printers.rules' as rules file
parse_file: reading '/lib/udev/rules.d/75-cd-aliases-generator.rules' as rules file
parse_file: reading '/etc/udev/rules.d/75-mount.rules' as rules file
parse_file: reading '/lib/udev/rules.d/75-net-description.rules' as rules file
parse_file: reading '/lib/udev/rules.d/75-persistent-net-generator.rules' as rules file
parse_file: reading '/lib/udev/rules.d/75-probe_mtd.rules' as rules file
parse_file: reading '/lib/udev/rules.d/75-tty-description.rules' as rules file
parse_file: reading '/lib/udev/rules.d/77-mm-ericsson-mbm.rules' as rules file
parse_file: reading '/lib/udev/rules.d/77-mm-longcheer-port-types.rules' as rules file
parse_file: reading '/lib/udev/rules.d/77-mm-pcmcia-device-blacklist.rules' as rules file
parse_file: reading '/lib/udev/rules.d/77-mm-platform-serial-whitelist.rules' as rules file
parse_file: reading '/lib/udev/rules.d/77-mm-qdl-device-blacklist.rules' as rules file
parse_file: reading '/lib/udev/rules.d/77-mm-simtech-port-types.rules' as rules file
parse_file: reading '/lib/udev/rules.d/77-mm-usb-device-blacklist.rules' as rules file
parse_file: reading '/lib/udev/rules.d/77-mm-x22x-port-types.rules' as rules file
parse_file: reading '/lib/udev/rules.d/77-mm-zte-port-types.rules' as rules file
parse_file: reading '/lib/udev/rules.d/78-graphics-card.rules' as rules file
parse_file: reading '/lib/udev/rules.d/78-sound-card.rules' as rules file
parse_file: reading '/lib/udev/rules.d/80-drivers.rules' as rules file
parse_file: reading '/lib/udev/rules.d/80-mm-candidate.rules' as rules file
parse_file: reading '/lib/udev/rules.d/80-udisks.rules' as rules file
parse_file: reading '/lib/udev/rules.d/85-brltty.rules' as rules file
parse_file: reading '/lib/udev/rules.d/85-hdparm.rules' as rules file
parse_file: reading '/lib/udev/rules.d/85-hplj10xx.rules' as rules file
parse_file: reading '/lib/udev/rules.d/85-keyboard-configuration.rules' as rules file
parse_file: reading '/lib/udev/rules.d/85-pcmcia.rules' as rules file
parse_file: reading '/lib/udev/rules.d/85-regulatory.rules' as rules file
parse_file: reading '/lib/udev/rules.d/85-usbmuxd.rules' as rules file
parse_file: reading '/lib/udev/rules.d/90-alsa-restore.rules' as rules file
parse_file: reading '/lib/udev/rules.d/90-alsa-ucm.rules' as rules file
parse_file: reading '/lib/udev/rules.d/90-libgpod.rules' as rules file
parse_file: reading '/lib/udev/rules.d/90-pulseaudio.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-keyboard-force-release.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-keymap.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-udev-late.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-upower-battery-recall-dell.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-upower-battery-recall-fujitsu.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-upower-battery-recall-gateway.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-upower-battery-recall-ibm.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-upower-battery-recall-lenovo.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-upower-battery-recall-toshiba.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-upower-csr.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-upower-hid.rules' as rules file
parse_file: reading '/lib/udev/rules.d/95-upower-wup.rules' as rules file
parse_file: reading '/lib/udev/rules.d/97-bluetooth-serial.rules' as rules file
parse_file: reading '/lib/udev/rules.d/97-bluetooth.rules' as rules file
parse_file: reading '/dev/.udev/rules.d/root.rules' as rules file
udev_rules_new: rules use 242472 bytes tokens (20206 * 12 bytes), 40965 bytes buffer
udev_rules_new: temporary index used 69360 bytes (3468 * 20 bytes)
udev_device_new_from_syspath: device 0x223a30d0 has devpath '/devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0'
udev_device_new_from_syspath: device 0x223ba9a8 has devpath '/devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0'
udev_device_read_db: device 0x223ba9a8 filled with db file data
udev_device_new_from_syspath: device 0x223bad78 has devpath '/devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0'
udev_device_new_from_syspath: device 0x223b4348 has devpath '/devices/pci0000:00/0000:00:1f.1/host0/target0:0:0'
udev_device_new_from_syspath: device 0x223b4548 has devpath '/devices/pci0000:00/0000:00:1f.1/host0'
udev_device_new_from_syspath: device 0x223b4730 has devpath '/devices/pci0000:00/0000:00:1f.1'
udev_device_new_from_syspath: device 0x223b4918 has devpath '/devices/pci0000:00'
udev_rules_apply_to_event: GROUP 6 /lib/udev/rules.d/50-udev-default.rules:68
udev_rules_apply_to_event: GROUP 24 /lib/udev/rules.d/50-udev-default.rules:74
udev_rules_apply_to_event: LINK 'scd0' /lib/udev/rules.d/50-udev-default.rules:74
udev_rules_apply_to_event: IMPORT 'cdrom_id --export /dev/sr0' /lib/udev/rules.d/60-cdrom_id.rules:9
util_run_program: 'cdrom_id --export /dev/sr0' started
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_CD=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_CD_R=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_CD_RW=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_DVD=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_DVD_R=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_DVD_RW=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_DVD_RAM=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_DVD_PLUS_R=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_DVD_PLUS_RW=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_DVD_PLUS_R_DL=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_MRW=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_MRW_W=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_MEDIA=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_MEDIA_CD_R=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_MEDIA_STATE=complete'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_MEDIA_SESSION_COUNT=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_MEDIA_TRACK_COUNT=1'
util_run_program: '/lib/udev/cdrom_id' (stdout) 'ID_CDROM_MEDIA_TRACK_COUNT_DATA=1'
util_run_program: 'cdrom_id --export /dev/sr0' returned with exitcode 0
udev_rules_apply_to_event: IMPORT 'ata_id --export /dev/sr0' /lib/udev/rules.d/60-persistent-storage.rules:32
util_run_program: 'ata_id --export /dev/sr0' started
util_run_program: '/lib/udev/ata_id' (stdout) 'ID_ATA=1'
util_run_program: '/lib/udev/ata_id' (stdout) 'ID_TYPE=cd'
util_run_program: '/lib/udev/ata_id' (stdout) 'ID_BUS=ata'
util_run_program: '/lib/udev/ata_id' (stdout) 'ID_MODEL=ATAPI_DVD_A_DH20A3P'
util_run_program: '/lib/udev/ata_id' (stdout) 'ID_MODEL_ENC=ATAPI\x20\x20\x20DVD\x20A\x20\x20DH20A3P\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'
util_run_program: '/lib/udev/ata_id' (stdout) 'ID_REVISION=XV68'
util_run_program: '/lib/udev/ata_id' (stdout) 'ID_SERIAL=ATAPI_DVD_A_DH20A3P'
util_run_program: 'ata_id --export /dev/sr0' returned with exitcode 0
udev_rules_apply_to_event: LINK 'disk/by-id/ata-ATAPI_DVD_A_DH20A3P' /lib/udev/rules.d/60-persistent-storage.rules:36
udev_rules_apply_to_event: IMPORT 'path_id /devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0' /lib/udev/rules.d/60-persistent-storage.rules:53
util_run_program: 'path_id /devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0' started
util_run_program: '/lib/udev/path_id' (stdout) 'ID_PATH=pci-0000:00:1f.1-scsi-0:0:0:0'
util_run_program: 'path_id /devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0' returned with exitcode 0
udev_rules_apply_to_event: LINK 'disk/by-path/pci-0000:00:1f.1-scsi-0:0:0:0' /lib/udev/rules.d/60-persistent-storage.rules:54
udev_rules_apply_to_event: IMPORT '/sbin/blkid -o udev -p -u noraid /dev/sr0' /lib/udev/rules.d/60-persistent-storage.rules:63
util_run_program: '/sbin/blkid -o udev -p -u noraid /dev/sr0' started
util_run_program: '/sbin/blkid' (stdout) 'ID_FS_VERSION=Joliet\x20Extension'
util_run_program: '/sbin/blkid' (stdout) 'ID_FS_LABEL=MYDISK'
util_run_program: '/sbin/blkid' (stdout) 'ID_FS_LABEL_ENC=MYDISK'
util_run_program: '/sbin/blkid' (stdout) 'ID_FS_TYPE=iso9660'
util_run_program: '/sbin/blkid' (stdout) 'ID_FS_USAGE=filesystem'
util_run_program: '/sbin/blkid -o udev -p -u noraid /dev/sr0' returned with exitcode 0
udev_rules_apply_to_event: LINK 'disk/by-label/MYDISK' /lib/udev/rules.d/60-persistent-storage.rules:73
udev_rules_apply_to_event: RUN 'udev-acl --action=$env{ACTION} --device=$env{DEVNAME}' /lib/udev/rules.d/70-acl.rules:72
udev_rules_apply_to_event: LINK 'cdrom' /etc/udev/rules.d/70-persistent-cd.rules:8
udev_rules_apply_to_event: LINK 'scd0' /etc/udev/rules.d/70-persistent-cd.rules:8
udev_rules_apply_to_event: LINK 'cdrw' /etc/udev/rules.d/70-persistent-cd.rules:8
udev_rules_apply_to_event: LINK 'cd' /etc/udev/rules.d/70-persistent-cd.rules:8
udev_rules_apply_to_event: LINK 'dvd' /etc/udev/rules.d/70-persistent-cd.rules:8
udev_rules_apply_to_event: LINK 'dvdrom' /etc/udev/rules.d/70-persistent-cd.rules:8
udev_rules_apply_to_event: LINK 'dvdrw' /etc/udev/rules.d/70-persistent-cd.rules:8
udev_rules_apply_to_event: LINK 'cdrw' /etc/udev/rules.d/70-persistent-cd.rules:9
udev_rules_apply_to_event: LINK 'dvd' /etc/udev/rules.d/70-persistent-cd.rules:10
udev_rules_apply_to_event: LINK 'dvdrw' /etc/udev/rules.d/70-persistent-cd.rules:11
udev_rules_apply_to_event: IMPORT 'udisks-part-id /dev/sr0' /lib/udev/rules.d/80-udisks.rules:104
util_run_program: 'udisks-part-id /dev/sr0' started
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'libudev: udev_device_new_from_syspath: '
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'device 0x838a130 has devpath '/devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0''
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'libudev: udev_device_read_db: '
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'device 0x838a130 filled with db file data'
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'using device_file=/dev/sr0 syspath=/sys/devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0, offset=0 ao=0 and number=0 for /dev/sr0'
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'Entering MS-DOS parser (offset=0, size=727525376)'
util_run_program: '/lib/udev/udisks-part-id' (stderr) ''
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'No MSDOS_MAGIC found'
util_run_program: '/lib/udev/udisks-part-id' (stderr) ''
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'Exiting MS-DOS parser'
util_run_program: '/lib/udev/udisks-part-id' (stderr) ''
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'Entering Apple parser'
util_run_program: '/lib/udev/udisks-part-id' (stderr) ''
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'No MAC_MAGIC found'
util_run_program: '/lib/udev/udisks-part-id' (stderr) ''
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'Leaving Apple parser'
util_run_program: '/lib/udev/udisks-part-id' (stderr) ''
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'No known partition table found'
util_run_program: '/lib/udev/udisks-part-id' (stderr) ''
util_run_program: '/lib/udev/udisks-part-id' (stderr) 'No partition table found on /dev/sr0: No such file or directory'
util_run_program: 'udisks-part-id /dev/sr0' returned with exitcode 0
udev_event_execute_rules: no node name set, will use kernel supplied name 'sr0'
udev_node_add: creating device node '/dev/sr0', devnum=11:0, mode=0660, uid=0, gid=24
udev_node_mknod: preserve file '/dev/sr0', because it has correct dev_t
udev_node_mknod: preserve permissions /dev/sr0, 060660, uid=0, gid=24
node_symlink: preserve already existing symlink '/dev/block/11:0' to '../sr0'
link_find_prioritized: found 'b11:0' claiming '/dev/.udev/links/scd0'
link_update: creating link '/dev/scd0' to '/dev/sr0'
node_symlink: preserve already existing symlink '/dev/scd0' to 'sr0'
link_find_prioritized: found 'b11:0' claiming '/dev/.udev/links/disk\x2fby-id\x2fata-ATAPI_DVD_A_DH20A3P'
link_update: creating link '/dev/disk/by-id/ata-ATAPI_DVD_A_DH20A3P' to '/dev/sr0'
node_symlink: preserve already existing symlink '/dev/disk/by-id/ata-ATAPI_DVD_A_DH20A3P' to '../../sr0'
link_find_prioritized: found 'b11:0' claiming '/dev/.udev/links/disk\x2fby-path\x2fpci-0000:00:1f.1-scsi-0:0:0:0'
link_update: creating link '/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:0:0' to '/dev/sr0'
node_symlink: preserve already existing symlink '/dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:0:0' to '../../sr0'
link_find_prioritized: found 'b11:0' claiming '/dev/.udev/links/disk\x2fby-label\x2fMYDISK'
link_update: creating link '/dev/disk/by-label/MYDISK' to '/dev/sr0'
node_symlink: preserve already existing symlink '/dev/disk/by-label/MYDISK' to '../../sr0'
link_find_prioritized: found 'b11:0' claiming '/dev/.udev/links/cdrom'
link_update: creating link '/dev/cdrom' to '/dev/sr0'
node_symlink: preserve already existing symlink '/dev/cdrom' to 'sr0'
link_find_prioritized: found 'b11:0' claiming '/dev/.udev/links/cdrw'
link_update: creating link '/dev/cdrw' to '/dev/sr0'
node_symlink: preserve already existing symlink '/dev/cdrw' to 'sr0'
link_find_prioritized: found 'b11:0' claiming '/dev/.udev/links/cd'
link_update: creating link '/dev/cd' to '/dev/sr0'
node_symlink: preserve already existing symlink '/dev/cd' to 'sr0'
link_find_prioritized: found 'b11:0' claiming '/dev/.udev/links/dvd'
link_update: creating link '/dev/dvd' to '/dev/sr0'
node_symlink: preserve already existing symlink '/dev/dvd' to 'sr0'
link_find_prioritized: found 'b11:0' claiming '/dev/.udev/links/dvdrom'
link_update: creating link '/dev/dvdrom' to '/dev/sr0'
node_symlink: preserve already existing symlink '/dev/dvdrom' to 'sr0'
link_find_prioritized: found 'b11:0' claiming '/dev/.udev/links/dvdrw'
link_update: creating link '/dev/dvdrw' to '/dev/sr0'
node_symlink: preserve already existing symlink '/dev/dvdrw' to 'sr0'
udev_device_update_db: unable to create temporary db file '/dev/.udev/data/b11:0.tmp': Permission denied
udevadm_test: UDEV_LOG=6
udevadm_test: DEVPATH=/devices/pci0000:00/0000:00:1f.1/host0/target0:0:0/0:0:0:0/block/sr0
udevadm_test: MAJOR=11
udevadm_test: MINOR=0
udevadm_test: DEVNAME=/dev/sr0
udevadm_test: DEVTYPE=disk
udevadm_test: ACTION=add
udevadm_test: SUBSYSTEM=block
udevadm_test: DEVLINKS=/dev/scd0 /dev/disk/by-id/ata-ATAPI_DVD_A_DH20A3P /dev/disk/by-path/pci-0000:00:1f.1-scsi-0:0:0:0 /dev/disk/by-label/MYDISK /dev/cdrom /dev/cdrw /dev/cd /dev/dvd /dev/dvdrom /dev/dvdrw
udevadm_test: ID_CDROM=1
udevadm_test: ID_CDROM_CD=1
udevadm_test: ID_CDROM_CD_R=1
udevadm_test: ID_CDROM_CD_RW=1
udevadm_test: ID_CDROM_DVD=1
udevadm_test: ID_CDROM_DVD_R=1
udevadm_test: ID_CDROM_DVD_RW=1
udevadm_test: ID_CDROM_DVD_RAM=1
udevadm_test: ID_CDROM_DVD_PLUS_R=1
udevadm_test: ID_CDROM_DVD_PLUS_RW=1
udevadm_test: ID_CDROM_DVD_PLUS_R_DL=1
udevadm_test: ID_CDROM_MRW=1
udevadm_test: ID_CDROM_MRW_W=1
udevadm_test: ID_CDROM_MEDIA=1
udevadm_test: ID_CDROM_MEDIA_CD_R=1
udevadm_test: ID_CDROM_MEDIA_STATE=complete
udevadm_test: ID_CDROM_MEDIA_SESSION_COUNT=1
udevadm_test: ID_CDROM_MEDIA_TRACK_COUNT=1
udevadm_test: ID_CDROM_MEDIA_TRACK_COUNT_DATA=1
udevadm_test: ID_ATA=1
udevadm_test: ID_TYPE=cd
udevadm_test: ID_BUS=ata
udevadm_test: ID_MODEL=ATAPI_DVD_A_DH20A3P
udevadm_test: ID_MODEL_ENC=ATAPI\x20\x20\x20DVD\x20A\x20\x20DH20A3P\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20
udevadm_test: ID_REVISION=XV68
udevadm_test: ID_SERIAL=ATAPI_DVD_A_DH20A3P
udevadm_test: ID_PATH=pci-0000:00:1f.1-scsi-0:0:0:0
udevadm_test: ID_FS_VERSION=Joliet\x20Extension
udevadm_test: ID_FS_LABEL=MYDISK
udevadm_test: ID_FS_LABEL_ENC=MYDISK
udevadm_test: ID_FS_TYPE=iso9660
udevadm_test: ID_FS_USAGE=filesystem
udevadm_test: TAGS=:udev-acl:
udevadm_test: GENERATED=1
udevadm_test: UDISKS_PRESENTATION_NOPOLICY=0
udevadm_test: run: 'udev-acl --action=add --device=/dev/sr0'
Опережая уточняющие вопросы, скажу, что сначала пробовал в правилах поиграться просто с mount /dev/sr0 /mnt/cdrom -t auto -o noauto,uhelper=udev,iocharset=utf8 как-то так, и такая же реакция, только при перезагрузке.