отключить кнопку CD / DVD на ноутбуке Linux (Ubuntu)

11

Мой малыш непрерывно нажимает кнопку cd / dvd и пытается уничтожить трей. Я знаю, что можно было бы позволить ей жить тяжелее, отключив кнопку извлечения. Как это сделать? Это Ubuntu (не должно иметь значения) Linux. Смотрите также этот связанный вопрос .

И такой же, как этот, но на окнах

РЕДАКТИРОВАТЬ: это Харди

Davide
источник
1
Это напоминает мне видео о ком-то, у кого был сценарий, который непрерывно извлекал и закрывал дисковод. Там была веревка, соединяющая лоток для дисков с качалкой ребенка. И привод компакт-диска только качал ребенка!
Jonno_FTW
@Jonno_FTW: похожая история с немецкого сайта ubuntuusers. Кто-то создал «тест», чтобы измерить, как часто привод может открываться и закрываться за минуту. Излишне говорить, что кто-то придумал, как это сделать через сеть, и повеселился на работе.
Бобби

Ответы:

5

Вы можете попробовать это ...

http://www.poweradded.net/2009/09/cddvd-tray-lockunlock-under-linux.html

Баумгарт
источник
Это хорошо, это работает довольно хорошо (код не является надежным, но я могу улучшить его сам, если мне это никогда не понадобится)
Davide
Это не работает в Fedora 19. Использование ноутбука Thinkpad T410.
SLM
Сначала не работало в Ubuntu, но я не видел обновления к сообщению (поиск «UPDATE1 03.Jan.2013», в котором было исправление, связывающее решение, снова работает, поэтому не пропустите этот комментарий когда дает ему выстрел
Бьорн
12

В командной строке:

eject -i 1

Чтобы вернуться к нормальной жизни:

eject -i 0

Или вы можете извлечь программное обеспечение, используя:

eject

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

По-видимому, это не работает со всеми версиями eject. Если это не так с вашим, вы можете полностью обойти извлечение и сделать это «сложным» способом:

echo 1 | sudo tee /proc/sys/dev/cdrom/lock
горилла
источник
Спасибо, но это не работает для моей ОС: $ eject -i 1 eject: неверный параметр - i $ eject --version eject версия 2.1.5 Джеффа Трантера (tranter@pobox.com)
Davide
Grrr, комментарии неправильно выровняют фрагмент кода и не могут быть отредактированы! Позвольте мне попробовать еще раз: $ eject -i 1результаты eject: invalid option -- i- и вы должны быть в состоянии выяснить версию из другого комментария
Davide
Weird. $ eject -i 1у меня отлично работает в кармике. Версия 2.1.5.
Regan
1
Если вы хотите сделать это трудным путем, то <code> <pre> sudo echo 1 & gt; / proc / sys / dev / cdrom / lock </ pre> </ code> будет работать с любой версией eject, потому что вы не используете eject.
горилла
@Gorilla, вы должны добавить это в качестве собственного ответа ..
Quackote Quack
2

Автомонтировщик по умолчанию в Ubuntu не блокирует попытку CD / DVD, когда он монтирует вставленный диск. Но если вы монтируете диск вручную (скажем, с помощью sudo), лоток должен заблокироваться и оставаться заблокированным до тех пор, пока вы не отключите диск.

Таким образом, этот процесс будет выполнять то, что вы хотите, без отключения других функций, и вы можете даже написать сценарий для быстрого доступа:

  1. Вставьте диск,
  2. Беги sudo umount /media/cdrom, тогда
  3. Бегать sudo mount /dev/cdrom /media/cdrom

Очевидно, замените эти пути и устройства теми, которые использует ваша система.

шарлатан
источник
Работает, но неудобно (на самом деле я знал об этом). В любом случае, спасибо за ответ.
Давиде
2

Пользователь оставил комментарий на другой вопрос. Комментарий должен был быть отдельным ответом. Я пишу его предложение здесь, так как оно может работать для кого-то (это не работает в Hardy Haron) и может быть более удобным, чем установка кода из моего принятого вопроса.

Запереть:

sudo bash -c 'echo 1 > /proc/sys/dev/cdrom/lock'

Разблокировать:

sudo bash -c 'echo 0 > /proc/sys/dev/cdrom/lock'

Конечно, будут использоваться небольшие сценарии оболочки, возможно связанные с панелью.

Давиде
источник
Есть ли служба, которую нужно перезапустить, чтобы это работало? Мой привод все еще открывается, когда я нажимаю кнопку извлечения.
CauselessEffect
@CauselessEffect, как я написал, никогда не работал для меня
Davide
1

Возможно, вы захотите попробовать cdctl. Это доступно здесь: http://cdctl.sourceforge.net/ . Этот переключатель выполнит то, что вы хотите.

       -oS, --lockdoor=S
          Locks the eject button so the disc cannot be manually ejected.  Requires  kernel  ver‐
          sion 2.2.4 or newer.  Set S to 0 to unlock the drive, and to 1 to lock it.

Я использовал это в течение последних 10 лет на Fedora, RHEL, CentOS, но пакет доступен в виде tarball и должен быть скомпилирован на Ubuntu. ПРИМЕЧАНИЕ. Пакет некоторое время не обновлялся, но работает нормально. На сайте gentoo есть патч, который исправляет небольшую проблему, чтобы его можно было скомпилировать с более новыми ядрами. Патч доступен здесь:

http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-misc/cdctl/files/cdctl-0.15-cdc_ioctls.patch?revision=1.1

После того как вы установили его, вы можете использовать команду для блокировки лотка для компакт-дисков:

cdctl -o1

Чтобы разблокировать лоток:

cdctl -o0

Я недавно перепаковал cdctl для использования в Debian / Ubuntu 12.10. Это доступно здесь, http://www.lamolabs.org/blog/wp-content/uploads/2011/01/cdctl_0.15-1.lamolabs.1_amd64.deb

ОДС
источник
Не основывается на самой последней версии Ubuntu для меня. Нужен этот патч от gentoo: sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-misc/cdctl/… . Серьезно, зачем использовать инструмент, который не использует такой простой патч, как этот.
dgrant
Э-э, потому что это единственный инструмент, который я нашел, который делает то, что мне нужно. Кроме того, применение патча не так уж и сложно , я поддерживаю его встроенную версию в своем репозитории yum здесь: lamolabs.org/yum-repos/Fedora/14/x86_64/… . Вы не можете использовать мой rpm напрямую, но вы можете конвертировать его, используя приложение иностранец, addictivetips.com/ubuntu-linux-tips/… .
SLM