Как отключить кнопку извлечения оптического дисковода для ноутбука и назначить извлечение на клавиатуре?

7

Я нахожусь на 14.04 и случайно открываю свой диск cd / dvd / bluray примерно 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, позволяющее заблокировать диск. Я добавил некоторую практическую информацию в решение, позволяющее:

  • Отключить кнопку извлечения устройства оптического дисковода при запуске
  • Добавить комбинацию клавиш для извлечения оптического дисковода
  • Убедитесь, что диск остается заблокированным после пробуждения от приостановки
задан Insperatus 07.01.2015 в 19:52
источник

5 ответов

10

Включить блокировку диска

Сначала скопируйте /lib/udev/rules.d/60-cdrom_id.rules в /etc/udev/rules.d/ так:

cp /lib/udev/rules.d/60-cdrom_id.rules /etc/udev/rules.d/

Затем отредактируйте /etc/udev/rules.d/60-cdrom_id.rules и закомментируйте проблемную строку:

sudoedit /etc/udev/rules.d/60-cdrom_id.rules

Найдите эту строку:

ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdrom_end"

Теперь добавьте # (эта «комментирует» строку, фактически сворачивая ее без удаления), чтобы она выглядела следующим образом:

# ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdrom_end"

Теперь сохраните и закройте, нажав Ctrl + X , затем Y для подтверждения, затем Enter , чтобы принять текущее имя файла. Не беспокойтесь, что это выглядит как странное временное имя файла, вот как работает sudoedit.

Теперь вы должны иметь возможность отключить кнопку устройства оптического привода (по существу, мы запираем диск) следующим образом:

eject -i on /dev/sr0 ~ или ~ eject -i 1 /dev/sr0 Они делают то же самое.

Блокировка привода при запуске

Чтобы сделать это более полезным, я хотел, чтобы эта команда вступила в силу при запуске. Я использовал программу GUI «Запуск приложений» (предварительно установленную в Ubuntu, найдите ее с помощью Dash), чтобы выполнить это.

Откройте программу, а затем нажмите кнопку «Добавить», откроется новое диалоговое окно.

Введите имя (я пошел с описательным «Блокирующим оптическим приводом») и в поле «Команда:» введите bash -c 'eject -i on /dev/sr0'

Нажмите «Добавить», чтобы завершить, а затем закройте программу.

Добавить ярлык клавиатуры

Теперь оптический привод заблокирован при запуске. Но как я могу открыть диск, когда мне нужно его использовать ?! Чтобы сделать его простым, я помещал команды в «выталкиваемую» комбинацию клавиш, которая разблокирует диск, выталкивает диск и затем блокирует диск. Таким образом, я все еще могу легко получить доступ к диску, но аппаратная кнопка никогда не будет проблемой.

Вот как выполнить эту комбинацию клавиш:

  • Откройте программу «Клавиатура», найденную в тире.
  • Перейдите на вкладку «Ярлыки».
  • Нажмите «Пользовательские ярлыки» в нижней части списка
  • Нажмите знак «+», откроется новое диалоговое окно
  • Назовите ярлык (я использовал «Unlock, Eject, Relock CD»)
  • Введите это в поле «Команда:»:

    bash -c 'eject -i off /dev/sr0 && eject /dev/sr0 && eject -i on /dev/sr0'
    
  • Нажмите «Применить»

  • Щелкните справа от имени ярлыка, где указано «Отключено». После нажатия кнопки «Отключено» изменяется на «Новый ускоритель»:

    Нажмите комбинацию клавиш, которую вы хотите использовать. Я использовал Ctrl + Alt + E

Вы можете сразу же проверить ярлык. Если все хорошо, и все готово!

Блокировать диск при пробуждении от приостановки

Я заметил, что мой диск снова разблокируется после возобновления с момента приостановки, поэтому я создал сценарий, чтобы гарантировать, что диск останется заблокированным в этом случае.

Создайте файл сценария:

sudoedit /usr/lib/pm-utils/sleep.d/99lock-optical

Вставьте следующее в новый файл:

#!/bin/sh
# lock the optical drive upon resume from suspend

case "${1}" in
    resume|thaw)
        eject -i 1 /dev/sr0    
;;
esac

Сохраните и закройте, и все готово!     

ответ дан Insperatus 15.01.2015 в 21:43
источник
1

Для меня информация здесь помогает: Ссылка

Я редактировал файл в каталоге / lib / , а не в / etc / Теперь в моей команде Ubuntu 14.04 работает: eject -i 1 / dev / sr0

    
ответ дан Dima 08.01.2015 в 20:14
источник
1

Если все остальное не выполнено:

Возьмите штифт (а не иглу, поскольку вы повредите себе), сильно нажмите на кнопку на приводе DVD и используйте ее как рычаг, чтобы вытащить кнопку. Затем возьмите небольшой кусочек пластика размером 1 мм шире и крупнее, чем полученное отверстие, нанесите на него супер-клей и приклейте его на отверстие , не заботясь о том, чтобы не поместить его поверх крошечного отверстия рядом с ним .

С этого момента для открытия DVD-диска используйте следующие 2 метода:

  1. Используйте Ubuntu «Извлечь» через тире
  2. Теперь держите этот портфолио для жизни вокруг вашего ПК и вставьте его в отверстие tiny рядом с вашим куском пластика, чтобы извлечь DVD-диск, когда ваш ноутбук выключен. (Используйте кусочек липкой ленты, чтобы закрепить штифт для жизни на нижней стороне ноутбука).
ответ дан Fabby 14.01.2015 в 13:51
источник
0

Попробуйте сделать это, чтобы кнопка не выбрасывалась:

  1. Открыть: Настройки системы > Клавиатура > Ярлыки > Звук и мультимедиа

  2. Выберите «Извлечь» и очистите ярлык (нажав «Backspace»).

Вы можете использовать настройки ярлыка, чтобы заставить его делать что-то более полезное, например, открывать обычно используемое приложение, блокировать экран или перезагружать Wi-Fi.

Источник:

У меня MacBook Pro работает 14.04, а кнопка извлечения находится прямо над Delete / Backspace, что делает ее легко нажатой случайно (это хуже для MacBook без дисков, если эта кнопка предназначена для Power). Использовал настройки ярлыка, чтобы кнопка извлечения заблокировала мой ноутбук. Использовали это решение с 12.04 и все, что между ними.

    
ответ дан maki57 12.01.2015 в 03:55
источник
0

На этом сайте я нашел это предложение, если eject -i 1 не работает:
sudo echo 1 > /proc/sys/dev/cdrom/lock для блокировки (0 вместо 1 для разблокировки)
Существуют и другие варианты.

Вот короткий исходный код с другой опцией: ссылка (обратите внимание на исправление для более новых версий в верхних комментариях!)

Но я читал в некоторых других форумах, что все эти команды извлечения только изменяют статус блокировки диска, когда диск вставлен и установлен. Единственное решение похоже на инструмент, называемый cdctl , но он не очень совместим со многими системами, поскольку я изучал комментарии.

    
ответ дан Byte Commander 15.01.2015 в 19:56
источник

Ознакомьтесь с другими вопросами по меткам