La orden lsof


lsof

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.

Artículos relacionados:

  1. Uso de ssh como unidad de red
  2. Invertir el orden de archivos PDF
  3. Reproducción de archivos mp3 en Amarok 2.3.x
  4. Uso de yum para debianistas
  5. iPod Nano 3G usando Amarok 2

  1. avatar

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

    #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