GNU/Linux >> Tutoriales Linux >  >> Cent OS

CentOS/RHEL:falla al desmontar un recurso compartido de Windows:"el dispositivo está ocupado"

El problema

No se puede desmontar un punto de montaje compartido de Windows mediante el comando de desmontaje. Este recurso compartido de Windows no está siendo utilizado por ningún proceso recientemente. Al ejecutar el comando umount, se ve el siguiente error;

umount: /data01: device is busy.
  (In some cases useful info about processes that use
  the device is found by lsof(8) or fuser(1))

La solución

El error 'umount:el dispositivo está ocupado ' significa que el servidor está reteniendo el punto de montaje debido a algún motivo. Se ejecuta un comando lsof para encontrar algunos descriptores de archivos abiertos.

# lsof /data01/
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
rsync 39176 oracle cwd DIR 0,25 0 54427649 /data01/primdb/rman
rsync 39176 oracle 1r REG 0,25 6678585344 54428135 /data01/primdb/rman/.RMDBPRD_LVL0_20170910_s145161_p1.WxJoHy (deleted)
rsync 39176 oracle 3u REG 0,25 5449449472 54428147 /data01/primdb/rman/.RMDBPRD_LVL0_20170910_s145161_p1.uqhidN

Este PID no se pudo eliminar incluso con el comando de eliminación.

# kill -9 39176
# lsof /data01/
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
rsync 39176 oracle cwd DIR 0,25 0 54427649 /data01/primdb/rman
rsync 39176 oracle 1r REG 0,25 6678585344 54428135 /data01/primdb/rman/.RMDBPRD_LVL0_20170910_s145161_p1.WxJoHy (deleted)
rsync 39176 oracle 3u REG 0,25 5449449472 54428147 /data01/primdb/rman/.RMDBPRD_LVL0_20170910_s145161_p1.uqhidN

Un proceso rsync que escribe en este punto de montaje todavía está en estado D debido a un bloqueo de E/S que ocurrió hace algún tiempo.

# ps aux |grep rsync
root 30103 0.0 0.0 103304 804 pts/0 S+ 10:24 0:00 grep rsync
oracle 39176 0.0 0.0 110956 96 ? D Sep10 17:48 rsync -av --delete /eva/primdb/rman/ /data01/primdb/rman/

Como este proceso está en un estado de suspensión ininterrumpida, este proceso no se pudo eliminar. Esta es la razón por la que no puede desmontar el recurso compartido de Windows del servidor.

El estado D los procesos no se pueden eliminar con el comando kill, ya que son como entradas huérfanas en la lista de procesos sin un padre. Por lo tanto, se recomienda reiniciar el servidor para eliminar cualquier proceso de estado D.

Si no es posible reiniciar en este momento, como en el caso de los servidores de producción, espere hasta que el IO vuelva a estar disponible para que el proceso se despierte y se complete. Sin embargo, no se recomienda esperar más de un mes, ya que la carga del servidor podría aumentar gradualmente si hay más procesos de estado D en el servidor.


Cent OS
  1. Cómo instalar VirtualBox 4.1 en CentOS 5 / RHEL 5

  2. Cómo instalar y configurar Device Mapper Multipath en CentOS/RHEL 6,7

  3. Cómo eliminar un disco ASM en un dispositivo multirruta en CentOS/RHEL

  4. Cómo eliminar un dispositivo multirruta inactivo sin reiniciar en CentOS/RHEL

  5. El sistema de archivos compartidos CIFS no se monta después de reiniciar en CentOS/RHEL 7

Comprobar dirección IP CentOS/RHEL

Cómo instalar Fedora/RHEL/CentOS mediante kickstart en un dispositivo LUKS existente

Cómo integrar RHEL 7 o CentOS 7 con Windows Active Directory

Cómo conectar una máquina Windows con RDP desde la consola CentOS 7 / RHEL 7

Cómo configurar nombres de dispositivos personalizados usando udev en CentOS/RHEL 7

Desmontar un recurso compartido de Windows falla en Linux