Примечание. Теперь ответ обновлен до 19.04.
Я на 14.04 и случайно открываю свой CD / DVD / Blu-ray диск около 20 раз в день. Я посмотрел на несколько вопросов, которые не дали рабочего решения.
И этот вопрос, и этот вопрос устарели - предлагаемое решение не работает.
Когда я это сделаю, eject -i on
меня встретятeject: unable to find or open device for: 'cdrom'
Когда я это делаю, eject -i on /dev/sr0
я получаю более благоприятный ответ: CD-Drive may NOT be ejected with device button
однако кнопка, к сожалению, все еще включена.
Информация от /proc/sys/dev/cdrom/info
предполагает, что блокировка возможна:
CD-ROM information, Id: cdrom.c 3.20 2003/12/17
drive name: sr0
drive speed: 24
drive # of slots: 1
Can close tray: 1
Can open tray: 1
Can lock tray: 1
Can change speed: 1
Can select disk: 0
Can read multisession: 1
Can read MCN: 1
Reports media changed: 1
Can play audio: 1
Can write CD-R: 1
Can write CD-RW: 1
Этот ответ имеет рабочее решение, которое фиксирует правило UDEV для включения блокировки диска. Я добавил практическую информацию к решению, что позволяет:
- Отключите аппаратную кнопку извлечения оптического привода при запуске
- Добавьте сочетание клавиш, чтобы извлечь оптический привод
- Убедитесь, что диск остается заблокированным после выхода из режима ожидания
Ответы:
Включить блокировку диска
(примечание: если это
eject -i on
уже работает, вы можете пропустить «Блокировка диска при запуске»).Во-первых, скопируйте,
/lib/udev/rules.d/60-cdrom_id.rules
чтобы/etc/udev/rules.d/
понравиться так:Затем отредактируйте /etc/udev/rules.d/60-cdrom_id.rules и закомментируйте проблемную строку:
Найдите эту строку:
Теперь добавьте
#
(это «закомментирует» строку, фактически обнуляя ее без удаления) впереди, чтобы она выглядела так:Теперь сохраните и закройте, нажав Ctrl+ X, затем Yподтвердите , затем подтвердите Enterтекущее имя файла. Не беспокойтесь, что оно выглядит как странное временное имя файла, именно так работает sudoedit.
Теперь вы сможете отключить аппаратную кнопку привода оптических дисков (по сути, мы блокируем диск) с помощью этого:
eject -i on /dev/sr0
~ или ~eject -i 1 /dev/sr0
Они делают то же самое.Блокировка диска при запуске
Чтобы сделать это более полезным, я хотел, чтобы эта команда вступила в силу при запуске. Для этого я использовал программу GUI «Startup Applications» (предварительно установленную в Ubuntu, найдите ее с помощью Dash).
Откройте программу и затем нажмите кнопку «Добавить», откроется новое диалоговое окно.
Введите имя (я использовал описательное «Блокировка оптического привода») и в поле «Command:» введите
bash -c 'eject -i on /dev/sr0'
Нажмите «Добавить» для завершения, а затем закройте программу.
Добавить сочетание клавиш
Теперь оптический привод заблокирован при запуске. Но как мне открыть диск, когда мне нужно его использовать ?! Чтобы упростить процесс, я поместил команды в комбинацию клавиш «извлечь», которая разблокирует диск, извлекает диск и затем снова блокирует диск. Таким образом, я все еще могу легко получить доступ к диску, но аппаратная кнопка никогда не является проблемой.
Вот как сделать это сочетание клавиш:
Введите это в поле «Command:»:
Нажмите «Применить»
Нажмите справа от имени вашего ярлыка, где написано «Отключено». Как только вы нажмете на него, «Отключено» изменится на «Новый ускоритель»:
Нажмите комбинацию клавиш, которую вы хотите использовать. Я использовал Ctrl+ Alt+E
Вы можете сразу же проверить ярлык. Если все хорошо, и все готово!
Блокировка диска после пробуждения из режима ожидания (метод pre-systemd)
Я заметил, что мой диск снова разблокируется после возобновления из режима ожидания, поэтому я создал скрипт, который гарантирует, что диск останется заблокированным в этом случае.
Создайте файл скрипта:
Вставьте следующее в новый файл:
Блокировка диска после пробуждения из режима ожидания (метод systemd)
Я использую 19.04 сейчас и заметил, что мой диск разблокировался после возобновления из режима ожидания. Этот метод работает, чтобы он оставался заблокированным:
Создайте файл скрипта:
Вставьте следующее в новый файл:
Сохраните и закройте, и все готово!
источник
Для меня информация здесь помогает: https://bugs.launchpad.net/ubuntu/+source/eject/+bug/885051/comments/6
Я отредактировал файл в каталоге / lib / , а не в / etc / Теперь в моей команде Ubuntu 14.04 работает: eject -i 1 / dev / sr0
источник
Если все остальное не удается:
Возьмите булавку (не иглу, которая поранит вас), плотно нажмите на нее за кнопкой на DVD-приводе и используйте ее в качестве рычага, чтобы вытащить кнопку. Затем возьмите небольшой кусочек пластика на 1 мм шире и больше полученного отверстия, нанесите на него немного супер-клея и приклейте его на отверстие , стараясь не положить его на крошечное отверстие рядом с ним .
С этого момента используйте следующие 2 способа, чтобы открыть DVD-привод:
источник
Попробуйте сделать так, чтобы кнопка не извлекалась:
Открыть: Системные настройки > Клавиатура > Сочетания клавиш > Звук и мультимедиа
Выберите «Извлечь» и очистите ярлык (нажав «Backspace»).
Вместо этого вы можете использовать настройки ярлыков, чтобы сделать что-то более полезное, например, открыть часто используемое приложение, заблокировать экран или сбросить настройки Wi-Fi.
Источник:
У меня MacBook Pro под управлением 14.04, и кнопка извлечения находится прямо над Delete / Backspace, что делает его легким случайным нажатием (это хуже для MacBook без дисководов, где эта кнопка вместо Power). Использовал настройки ярлыков, чтобы кнопка извлечения заблокировала мой ноутбук. Использовали это решение с 12.04 и все промежуточное.
источник
На этом сайте я нашел это предложение, если
eject -i 1
оно не работает:sudo echo 1 > /proc/sys/dev/cdrom/lock
заблокировать (0 вместо 1, чтобы разблокировать).Есть и другие возможные варианты.
Вот краткий исходный код c, выполняющий другую опцию: ссылка (обратите внимание на исправление для более новых версий в верхних комментариях!)
Но я читал на некоторых других форумах, что все эти команды извлечения изменяют состояние блокировки диска только тогда, когда диск вставлен и смонтирован. Кажется, единственным решением является инструмент под названием
cdctl
, но он не очень совместим со многими системами, как я изучал комментарии.источник