El problema
Al intentar volver a agregar un dispositivo a una redada, aparece el siguiente mensaje:
# mdadm /dev/md2 --add /dev/sda1 mdadm: Cannot open /dev/sda1: Device or resource busy
Mientras que el comando mdstat indica que el dispositivo está inactivo.
# cat /proc/mdstat Personalities : md2 : inactive sda1[0](S) 292928154 blocks super 1.2 unused devices: [none]
mdadm no pudo crear un dispositivo de ataque de software con el mensaje de error Dispositivo o recurso ocupado.
La solución
Comprobaciones previas
Antes de continuar, asegúrese de que las particiones fueran parte de algún FS activo.
mdadm --detail /dev/md2 mdadm: md device /dev/md2 does not appear to be active. mdadm --detail --scan >> /etc/mdadm.conf mdadm: md device /dev/md2 does not appear to be active. # ls -l /etc/mdadm.conf -rw-r--r-- 1 root bin 0 Sep 18 21:17 /etc/mdadm.conf # cat /etc/mdadm.conf
La causa del problema
La causa de este problema puede ser que device-mapper-multipath (u otros módulos de mapeo de dispositivos) tiene control sobre este dispositivo, por lo tanto, mdadm no puede acceder a él. El comando "dmsetup table" mostrará que este dispositivo está controlado por el mapeador de dispositivos (consulte "man dmsetup" para obtener información más detallada)
# dmsetup table
Solución alternativa
Como solución alternativa, puede eliminar el dispositivo de la tabla del mapeador de dispositivos con el siguiente comando.
# dmsetup remove [device id]
Solución permanente
Como solución, puede iniciar su servidor sin ciertos módulos mapeadores de dispositivos, por ejemplo, dmraid, puede agregar "nodmraid" a la línea de comando del kernel en /etc/grub.conf como se muestra a continuación.
title Enterprise Linux Enterprise Linux Server (2.6.32-100.24.1.el5) root (hd0,0) kernel /vmlinuz-2.6.32-100.24.1.el5 ro root=/dev/vg00/lv00 console=tty0 nodmraid initrd /initrd-2.6.32-100.24.1.el5.img
o si device-mapper-multipath tiene control sobre este dispositivo, puede agregarlo a la sección de la lista negra en /etc/multipath.conf
# vi /etc/multipath.conf blacklist { wwid [your world-wide-id for this device] }
Vuelva a cargar el multipathd para que los cambios surtan efecto:
# service multipathd reload # multipath -v2
Asegúrese de que multipath no cree mapas para estos dispositivos en 'multipath -ll'.
# multipath -ll
El asignador de dispositivos no debe tomar el control en el momento del arranque.
Verificar
Una vez que haya realizado los pasos mencionados anteriormente, debería poder crear el software RAID. Para verificar:
# mdadm /dev/md2 --add /dev/sda1