Mi rendo conto che questa è una vecchia domanda e il poster originale credeva che SAMBA fosse il problema, ma ho riscontrato lo stesso identico problema e penso che molto probabilmente il problema non fosse SAMBA (in realtà non ho nemmeno SAMBA), dal momento che non non compare nel lsof
output, ma piuttosto l'utente si trovava già nella directory del punto di montaggio RAID quando è passato a root o ha eseguito un sudo.
Nel mio caso, il problema è stato che ho avviato la mia shell di root quando il mio utente normale si trovava in una directory situata su quel /dev/md127
montato guidare.
[email protected]:/mnt/md127_content/something$ su -
[email protected]:~# umount /dev/md127
umount: /dev/md127: target is busy
Ecco l'output di lsof
nel mio caso:
[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
Anche se lsof | grep md125
non ha mostrato alcun processo tranne [md127_raid1]
, non sono riuscito a smontare /dev/md127
. E mentre umount -l /dev/md127
nasconde /dev/md127
dall'output di mount
, l'unità è apparentemente ancora occupata e quando mdadm --stop /dev/md127
viene tentato, viene visualizzato lo stesso errore:
mdadm: Cannot get exclusive access to /dev/md127:Perhaps a running process, mounted filesystem or active volume group?
SOLUZIONE è semplice:controlla se ci sono utenti loggati che sono ancora in una directory su quell'unità. In particolare, controlla se la shell di root che stai utilizzando è stata avviata quando la directory corrente del tuo utente normale era su quell'unità. Passa a quella shell utenti (forse solo exit
la tua radice deve), spostati da qualche altra parte e umount
e mdadm --stop
funzionerà:
[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
Se stai utilizzando LVM su mdadm, a volte LVM non eliminerà i dispositivi Device Mapper durante la disattivazione del gruppo di volumi. Puoi eliminarlo manualmente.
- Assicurati che non ci sia nulla nell'output di
sudo vgdisplay
. - Cerca in
/dev/mapper/
. A parte ilcontrol
dovrebbe esserci un dispositivo Device Mapper che prende il nome dal gruppo di volumi, ad es.VolGroupArray-name
. - Esegui
sudo dmsetup remove VolGroupArray-name
(sostituendoVolGroupArray-name
con il nome del dispositivo Device Mapper). - Ora dovresti essere in grado di eseguire
sudo mdadm --stop /dev/md0
(o qualunque sia il nome delmdadm
dispositivo è).
Stavo riscontrando problemi simili ma non avevo montato il dispositivo raid in alcun modo. Nemmeno fermare SAMBA sembrava aiutare. lsof
non ha mostrato nulla.
Tutto si è appena tradotto in:
# mdadm --stop /dev/md2
mdadm: Cannot get exclusive access to /dev/md2:Perhaps a running process, mounted filesystem or active volume group?
Ciò che alla fine mi ha risolto è stato ricordare che si trattava di una partizione di swap, quindi ho dovuto solo swapoff /dev/md2
- questo mi ha permesso di mdadm --stop /dev/md2
con successo.