desactivar el botón cd / dvd en la computadora portátil linux (ubuntu)


11

Mi todler está presionando continuamente el botón cd / dvd e intentando destruir la bandeja. Sé que debería ser posible dejar su vida más difícil, deshabilitando el botón de expulsión. ¿Como hacer eso? Esto es ubuntu (no debería importar) linux. Ver también la pregunta relacionada .

Y el mismo que este, pero en Windows

EDITAR: esto es Hardy


1
Esto me recuerda un video de alguien que tenía un guión que continuamente expulsaba y cerraba la unidad de disco. Había una cuerda que conectaba la bandeja del disco al balancín de un bebé. ¡Y la unidad de CD simplemente sacudió al bebé!
Jonno_FTW

@ Jonon_FTW: Una historia similar proviene del sitio alemán ubuntuusers. Alguien creó un 'punto de referencia' para medir la frecuencia con la que la unidad se podía abrir y cerrar en un minuto. No hace falta decir que alguien descubrió cómo hacerlo a través de la red y se divirtió en el trabajo.
Bobby

Respuestas:


5

Esto es bueno, funciona bastante bien (el código no es robusto, pero puedo mejorarlo yo mismo, si nunca lo necesito)
Davide

Esto no funciona en Fedora 19. Uso de una computadora portátil Thinkpad T410.
slm

Al principio no funcionó en Ubuntu, pero no vi la actualización de la publicación (busque "ACTUALIZACIÓN1 03.Ene.2013" que tenía una solución que vinculaba la solución, vuelva a funcionar, así que no se pierda ese comentario al intentarlo.
Björn

12

En la línea de comando:

eject -i 1

Para volver a la normalidad:

eject -i 0

O puede expulsarlo mediante software:

eject

En todos los casos, puede agregar un nombre de dispositivo si tiene más de un dispositivo eyectable.

Aparentemente, esto no funciona con todas las versiones de expulsión. Si no lo hace con el suyo, puede evitar la expulsión por completo y hacerlo de la manera "difícil":

echo 1 | sudo tee /proc/sys/dev/cdrom/lock

Gracias, pero no funciona para mi sistema operativo: $ eject -i 1 eject: opción no válida - i $ eject --version eject versión 2.1.5 por Jeff Tranter (tranter@pobox.com)
Davide

Grrr, los comentarios no alinean el fragmento de código correctamente y no se pueden editar. Permítanme intentarlo de nuevo: los $ eject -i 1resultados eject: invalid option -- i- y deberían poder averiguar la versión del otro comentario
Davide

Extraño. $ eject -i 1funciona bien para mí en Karmic. Versión 2.1.5.
regan

1
Si quieres hacerlo de la manera difícil, entonces <code> <pre> sudo echo 1 & gt; / proc / sys / dev / cdrom / lock </pre> </code> funcionará con cualquier versión de expulsión, porque no está utilizando expulsión.
gorila

@gorilla, deberías agregar eso como tu propia respuesta ..
quack quixote

2

El montador automático predeterminado de Ubuntu no bloquea el intento de CD / DVD cuando monta un disco insertado. Pero si monta el disco manualmente (digamos, con sudo), la bandeja debe bloquearse y permanecer bloqueada hasta que desmonte el disco.

Por lo tanto, este proceso lograría lo que desea, sin deshabilitar otras funciones, e incluso podría ejecutarlo para un acceso rápido:

  1. Inserte un disco,
  2. Corre sudo umount /media/cdrom, entonces
  3. correr sudo mount /dev/cdrom /media/cdrom

Obviamente, reemplace esas rutas y dispositivos con los que usa su sistema.


Funciona, pero es inconveniente (de hecho, sí lo sabía). Gracias por la respuesta, de todos modos.
Davide

2

Un usuario dejó un comentario sobre otra pregunta. El comentario debería haber sido una respuesta separada. Estoy escribiendo su sugerencia aquí, ya que podría funcionar para alguien (no lo hace en Hardy Haron) y podría ser más conveniente que instalar el código de mi pregunta aceptada.

Para bloquear:

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

Para desbloquear:

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

Por supuesto, se utilizarían pequeños scripts de shell, posiblemente vinculados desde el panel.


¿Hay algún servicio que deba reiniciarse para que esto funcione? Mi unidad todavía se está abriendo cuando presiono el botón de expulsión.
CauselessEffect

@CauselessEffect tal como lo escribí, nunca funcionó para mí
Davide

1

Es posible que desee probar cdctl. Está disponible aquí: http://cdctl.sourceforge.net/ . Este interruptor logrará lo que quieres.

       -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.

Lo he usado durante los últimos 10 años en Fedora, RHEL, CentOS, pero el paquete está disponible como tarball y debería ser compilable en Ubuntu. NOTA: El paquete no se ha actualizado en mucho tiempo, pero funciona bien. Hay un parche disponible en el sitio de gentoo que soluciona un pequeño problema para que pueda compilarse con núcleos más recientes. El parche está disponible aquí:

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

Una vez que lo haya instalado, puede usar el comando para bloquear la bandeja de CD:

cdctl -o1

Para desbloquear la bandeja:

cdctl -o0

Recientemente he reempaquetado cdctl para usar en Debian / Ubuntu 12.10. Está disponible aquí, http://www.lamolabs.org/blog/wp-content/uploads/2011/01/cdctl_0.15-1.lamolabs.1_amd64.deb


No se basa en la versión más reciente de Ubuntu para mí. Necesita este parche de gentoo: sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-misc/cdctl/… . En serio, ¿por qué molestarse con una herramienta que no tomará un parche tan simple como este?
Dgrant

Uhh, porque es la única herramienta que he encontrado que hace lo que necesito. Además de la aplicación del parche no es tan importante, mantengo una versión integrada de esto en mi repositorio de yum aquí: lamolabs.org/yum-repos/Fedora/14/x86_64/… . No puede usar mis rpm directamente, pero puede convertirlo usando la aplicación alien, addictivetips.com/ubuntu-linux-tips/… .
slm
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.