Je me rends compte qu'il s'agit d'une vieille question et l'affiche originale pensait que SAMBA était le problème, mais j'ai rencontré exactement le même problème et je pense que très probablement le problème n'était pas SAMBA (je n'ai même pas SAMBA), car il n'a pas n'apparaît pas dans le lsof sortie, mais plutôt l'utilisateur était déjà dans le répertoire du point de montage RAID lorsqu'il est passé à la racine ou a fait un sudo.
Dans mon cas, le problème était que j'ai démarré mon shell root alors que mon utilisateur habituel se trouvait dans un répertoire situé sur ce /dev/md127 monté conduire.
[email protected]:/mnt/md127_content/something$ su -
[email protected]:~# umount /dev/md127
umount: /dev/md127: target is busy
Voici la sortie de lsof dans mon cas :
[email protected]:[email protected]:~# lsof | grep /dev/md127
md127_rai 145 root cwd DIR 253,0 4096 2 /
md127_rai 145 root rtd DIR 253,0 4096 2 /
md127_rai 145 root txt unknown /proc/145/exe
Même si lsof | grep md125 n'a montré aucun processus sauf [md127_raid1] , je n'ai pas pu démonter /dev/md127 . Et tandis que umount -l /dev/md127 masque /dev/md127 à partir de la sortie de mount , le lecteur est apparemment toujours occupé, et lorsque mdadm --stop /dev/md127 est tenté, la même erreur s'affiche :
mdadm: Cannot get exclusive access to /dev/md127:Perhaps a running process, mounted filesystem or active volume group?
SOLUTION est simple :vérifiez s'il y a des utilisateurs connectés qui se trouvent encore dans un répertoire sur ce lecteur. En particulier, vérifiez si le shell root que vous utilisez a été démarré lorsque le répertoire actuel de votre utilisateur habituel se trouvait sur ce lecteur. Passez au shell de cet utilisateur (peut-être juste exit votre racine doit), déplacer ailleurs, et umount et mdadm --stop fonctionnera :
[email protected]:~# exit
[email protected]:/mnt/md127_content/something$ cd /
[email protected]:/$ su -
[email protected]:~# umount /dev/md127
[email protected]:~# mdadm --stop /dev/md127
mdadm: stopped /dev/md127
Si vous utilisez LVM au-dessus de mdadm, parfois LVM ne supprimera pas les périphériques Device Mapper lors de la désactivation du groupe de volumes. Vous pouvez le supprimer manuellement.
- Assurez-vous qu'il n'y a rien dans la sortie de
sudo vgdisplay. - Regardez dans
/dev/mapper/. Mis à part lecontrolfichier, il devrait y avoir un périphérique Device Mapper nommé d'après votre groupe de volumes, par ex.VolGroupArray-name. - Exécutez
sudo dmsetup remove VolGroupArray-name(en remplaçantVolGroupArray-nameavec le nom de l'appareil Device Mapper). - Vous devriez maintenant pouvoir exécuter
sudo mdadm --stop /dev/md0(ou quel que soit le nom dumdadml'appareil est).
Je rencontrais des problèmes similaires, mais je n'avais pas monté le périphérique RAID de quelque manière que ce soit. Arrêter SAMBA n'a pas semblé aider non plus. lsof n'a rien montré.
Tout a abouti à :
# mdadm --stop /dev/md2
mdadm: Cannot get exclusive access to /dev/md2:Perhaps a running process, mounted filesystem or active volume group?
Ce qui m'a finalement résolu le problème, c'est de me souvenir qu'il s'agissait d'une partition de swap - je n'avais donc qu'à swapoff /dev/md2 - cela m'a permis de mdadm --stop /dev/md2 avec succès.