Это перепечатка ответа, который я дал на свой собственный идентичный вопрос на сайте Unix & Linux под названием: Как я могу отключить кнопку моего привода CD/DVD? ,
Проблема определенно вызвана UDEV, как вы уже догадались. Проблема заключается в том, что эта строка находится в большинстве файлов UDEV, связанных с диском cdrom.
пример
На Fedora 19 есть следующий файл, /usr/lib/udev/rules.d/60-cdrom_id.rules
. В этом файле находится следующая строка, в которой используется кнопка извлечения для CD/DVD-устройств.
ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdrom_end"
Вы можете обойти эту проблему и отключить способность UDEV кооптировать кнопку извлечения, выполнив следующие действия:
Сделайте копию файла 60-cdrom_id.rules
$ sudo cp /usr/lib/udev/rules.d/60-cdrom_id.rules /etc/udev/rules.d/.
Отредактируйте эту скопированную версию файла и закомментируйте строку, содержащую строку DISK_EJECT_REQUEST
.
$ sudoedit /etc/udev/rules.d/60-cdrom_id.rules
Сохраните файл и изменения должны быть заметны немедленно!
Приведенное выше решение устраняет проблему как для eject
и для cdctl
. Теперь следующие команды работают как положено:
заблокировать диск
$ eject -i on /dev/sr0
eject: CD-Drive may NOT be ejected with device button
-or-
$ cdctl -o1
разблокировать диск
$ eject -i off /dev/sr0
eject: CD-Drive may be ejected with device button
-or-
$ cdctl -o0