Habilitar el bloqueo de la unidad
(nota: si eject -i on
ya funciona, puede pasar a "Bloquear la unidad al iniciar")
Primero, copie /lib/udev/rules.d/60-cdrom_id.rules
para /etc/udev/rules.d/
gustar así:
cp /lib/udev/rules.d/60-cdrom_id.rules /etc/udev/rules.d/
A continuación, edite /etc/udev/rules.d/60-cdrom_id.rules y comente la línea problemática:
sudoedit /etc/udev/rules.d/60-cdrom_id.rules
Localiza esta línea:
ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdrom_end"
Ahora agregue un #
(esto "comenta" la línea, anulando efectivamente sin eliminar) al frente para que se vea así:
# ENV{DISK_EJECT_REQUEST}=="?*", RUN+="cdrom_id --eject-media $devnode", GOTO="cdrom_end"
Ahora guarde y cierre presionando Ctrl+ X, luego Ypara confirmar, seguido de Enterpara aceptar el nombre del archivo actual. No se preocupe que aparezca como un nombre de archivo temporal extraño, así es como funciona sudoedit.
Ahora debería poder desactivar el botón de hardware de la unidad óptica (esencialmente estamos bloqueando la unidad) con esto:
eject -i on /dev/sr0
~ o ~ eject -i 1 /dev/sr0
Hacen lo mismo.
Bloquee la unidad al iniciar
Para que esto sea más útil, quería que este comando surta efecto al inicio. Utilicé el programa GUI "Aplicaciones de inicio" (preinstalado en Ubuntu, lo encuentro con Dash) para lograr esto.
Abra el programa y luego haga clic en el botón "Agregar", se abrirá un nuevo cuadro de diálogo.
Escriba un nombre (fui con el descriptivo "Bloquear unidad óptica") y dentro del campo "Comando:" ingrese bash -c 'eject -i on /dev/sr0'
Haga clic en "Agregar" para completar y luego cierre el programa.
Agregar un atajo de teclado
Ahora la unidad óptica está bloqueada al inicio. Pero, ¿cómo abriré el disco cuando necesito usarlo? Para simplificarlo, puse los comandos en un método abreviado de teclado de "expulsión" que desbloquea la unidad, la expulsa y luego la vuelve a bloquear. De esta manera, todavía puedo acceder fácilmente a la unidad, pero el botón de hardware nunca es un problema.
Aquí le mostramos cómo lograr este atajo de teclado:
- Abra el programa "Teclado" que se encuentra dentro del Tablero.
- Haga clic en la pestaña "Accesos directos"
- Haga clic en "Accesos directos personalizados" al final de la lista
- Haga clic en el signo "+", se abrirá un nuevo cuadro de diálogo
- Asigne un nombre al acceso directo (utilicé "Desbloquear, Expulsar, Recargar CD")
Ingrese esto en el campo "Comando:":
bash -c 'eject -i off /dev/sr0 && eject /dev/sr0 && eject -i on /dev/sr0'
Haga clic en "Aplicar"
Haga clic a la derecha del nombre de su acceso directo donde dice "Deshabilitado". Una vez que hace clic en él, "Desactivado" cambia a "Nuevo acelerador":
Presione la combinación de teclas que desea usar. Yo usé Ctrl+ Alt+E
Luego puede probar el acceso directo de inmediato. ¡Si todo está bien cerca y listo!
Bloquear unidad al despertar desde la suspensión (método pre-systemd)
Me di cuenta de que mi unidad se desbloquea nuevamente al reanudar la suspensión, por lo que creé un script para garantizar que la unidad permanezca bloqueada en este caso.
Crea el archivo de script:
sudoedit /usr/lib/pm-utils/sleep.d/99lock-optical
Pegue lo siguiente en el nuevo archivo:
#!/bin/sh
# lock the optical drive upon resume from suspend
case "${1}" in
resume|thaw)
eject -i 1 /dev/sr0
;;
esac
Bloquear unidad al despertar desde la suspensión (método systemd)
Estoy usando 19.04 ahora y noté que mi unidad se desbloqueaba al reanudar la suspensión. Este método funciona para que permanezca bloqueado:
Crea el archivo de script:
sudoedit /lib/systemd/system-sleep/00start_my_connection
Pegue lo siguiente en el nuevo archivo:
#!/bin/sh
if [ $1 = post ]
then eject -i 1 /dev/sr0
fi
¡Guarde y cierre y ya está todo listo!