J'ai /dev/md127
RAID5 Tableau composé de quatre lecteurs. J'ai réussi à chaud les supprimer de la matrice et actuellement /dev/md127
n'a pas de lecteurs:
cat /proc/mdstat Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid1 sdd1[0] sda1[1]
304052032 blocks super 1.2 [2/2] [UU]
md1 : active raid0 sda5[1] sdd5[0]
16770048 blocks super 1.2 512k chunks
md127 : active raid5 super 1.2 level 5, 512k chunk, algorithm 2 [4/0] [____]
unused devices: <none>
et
mdadm --detail /dev/md127
/dev/md127:
Version : 1.2
Creation Time : Thu Sep 6 10:39:57 2012
Raid Level : raid5
Array Size : 8790402048 (8383.18 GiB 9001.37 GB)
Used Dev Size : 2930134016 (2794.39 GiB 3000.46 GB)
Raid Devices : 4
Total Devices : 0
Persistence : Superblock is persistent
Update Time : Fri Sep 7 17:19:47 2012
State : clean, FAILED
Active Devices : 0
Working Devices : 0
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Number Major Minor RaidDevice State
0 0 0 0 removed
1 0 0 1 removed
2 0 0 2 removed
3 0 0 3 removed
J'ai essayé de faire mdadm --stop /dev/md127
mais:
mdadm --stop /dev/md127
mdadm: Cannot get exclusive access to /dev/md127:Perhaps a running process, mounted filesystem or active volume group?
Je me suis assuré que c'est démontré, umount -l /dev/md127
et confirmé qu'il est en effet démontré:
umount /dev/md127
umount: /dev/md127: not mounted
J'ai essayé de zéro Superblock de chaque lecteur et je reçois (pour chaque lecteur):
mdadm --zero-superblock /dev/sde1
mdadm: Unrecognised md component device - /dev/sde1
Voici la sortie de lsof | grep md127
:
lsof|grep md127
md127_rai 276 root cwd DIR 9,0 4096 2 /
md127_rai 276 root rtd DIR 9,0 4096 2 /
md127_rai 276 root txt unknown /proc/276/exe
Que puis-je faire d'autre? LVM n'est même pas installé, il ne peut donc pas être un facteur.
Après beaucoup de piquer, j'ai enfin trouvé ce qui m'empêtait d'arrêter le tableau. C'était un processus Samba. Après le service SMBD STOP, j'ai pu arrêter le tableau. C'est étrange cependant parce que bien que la matrice ait été montée et partagée via Samba à un moment donné, lorsque j'ai essayé de l'arrêter, c'était déjà démonté.
Je me rends compte que c'est une question ancienne et l'affiche originale croyait que Samba était la question, mais j'ai connu le même problème exact et penser que très probablement le problème n'était pas Samba (je n'ai même pas de samba), car il n'a pas fait 't apparaît dans la sortie lsof
, mais l'utilisateur était déjà dans le répertoire du point de montage RAID lorsqu'il est passé à root ou a fait un sudo.
Dans mon cas, le problème était que j'ai commencé ma coquille racine lorsque mon utilisateur habituel était dans un répertoire situé sur ce lecteur monté /dev/md127
.
user1@comp1:/mnt/md127_content/something$ su -
root@comp1:~# umount /dev/md127
umount: /dev/md127: target is busy
Voici la sortie de lsof
dans mon cas:
root@comp1:root@comp1:~# 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 procédé sauf [md127_raid1]
, Je ne pouvais pas démonter /dev/md127
. Et tandis que umount -l /dev/md127
Cache /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 est affichée. :
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 à ceux qui sont toujours dans un répertoire sur ce lecteur. Surtout, vérifiez si la coque de racine que vous utilisez a été démarrée lorsque le répertoire actuel de votre utilisateur habituel était sur ce lecteur. Passer à ce shell utilisateur (peut-être juste exit
votre racine doit), déplacez-vous ailleurs, et umount
et mdadm --stop
Travaillera:
root@comp1:~# exit
user1@comp1:/mnt/md127_content/something$ cd /
user1@comp1:/$ su -
root@comp1:~# umount /dev/md127
root@comp1:~# mdadm --stop /dev/md127
mdadm: stopped /dev/md127
Si vous utilisez LVM sur MDADM, Parfois, LVM ne supprimera pas les périphériques de mapper du périphérique lors de la désactivation du groupe de volumes. Vous pouvez le supprimer manuellement.
Sudo vgdisplay
./dev/mapper/
. Outre le fichier control
, il devrait y avoir un périphérique de mapper de périphérique nommé d'après votre groupe de volumes, par ex. VolGroupArray-name
.Sudo dmsetup remove VolGroupArray-name
(substitut VolGroupArray-name
avec le nom du périphérique de mapper du périphérique).Sudo mdadm --stop /dev/md0
(ou quel que soit le nom du périphérique mdadm
est).Je rencontrais des problèmes similaires, mais je n'avais pas eu le périphérique RAID monté de quelque manière que ce soit. Arrêter Samba ne semblait pas aider non plus. lsof
_ n'a rien montré.
Tout a entraîné:
# 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éparé pour moi, il se souvenait que c'était une partition de swap - alors je devais juste avoir à swapoff /dev/md2
- Cela m'a permis de mdadm --stop /dev/md2
avec succès.