Algunas veces quieres expulsar un cd o dvd en Linux y obtienes un error como el mostrado arriba. Puedes intentar presionar el botón de expulsar de la unidad, pero simplemente no lo expulsará. ¿Qué puedes hacer al respecto?
La orden lsof
Si quieres saber cuál proceso tiene un recurso ocupado, entonces debes usar la orden lsof. Sin opciones ni argumentos, lsof lista todos los archivos abiertos por procesos activos en el sistema. Pasándole una ruta de archivo, lsof mostrará el proceso o aplicación que tiene el archivo abierto.
Por ejemplo, para el caso de arriba puedes verificar la unidad de cd escribiendo en un terminal lo siguiente:
lgallard@moody:~$ lsof /dev/cdrom COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME amarok 4269 lgallard 78r REG 11,0 2964712 9540482 /media/cdrom0/dxr/MPEG#1.mp3
Por lo que se ve, Amarok tiene la unidad de cd ocupada (de hecho, la reproducción del archivo fue pausada). Cerrando la aplicación o liberando el recurso te permitirá expulsar el cd o dvd nuevamente.






Planeta Linux
#1 by Luis Gallardo on 25/02/2010 - 8:35
@richerVE Eso es correcto. De hecho si te fijas en el error que te da la GUI la sugerencia es lsof o fuser :)
#2 by richerVE on 25/02/2010 - 7:55
Saludos Luis, también puedes utilizar la orden fuser, en algunos casos es más fácil de identificar los procesos