/ dev / md127 weigert sich anzuhalten. Keine geöffneten Dateien

7

Also versuche ich / dev / md127 auf meiner Ubuntu 12.10 Box zu stoppen. Es wurde als RAID1 eingerichtet, aber ich versuche, alles (naja, umbenennen) auf md0 zu verschieben. Ich habe gelesen, dass ein Umbenennen nicht möglich ist, daher versuche ich, die Laufwerke zu entfernen und sie als md0 in ein neues Array einzufügen. Ich konnte ein Laufwerk (sdb) mit --fail und --remove entfernen, aber sdc reagiert nicht und md127 reagiert auch nicht auf --stop --force.

Ich habe fuser und lsof ausgeführt und mit md127 auch nichts angezeigt. Ich habe LVM auf md127 ausgeführt, aber ich habe die LVs umountet und "{lv, vg} change -an vg_Name" durchgeführt.

Ich weiß nicht, was ich als nächstes versuchen soll. Und für diejenigen, die wissen wollen, warum ich umbenennen / verschieben möchte, bin ich eine kleine Zwangsstörung über solche Dinge.

Wenn es relevant ist, sind hier die genauen Befehle, die ich verwendet habe, obwohl die Befehle zum Stoppen / Scheitern / Entfernen mehrmals versucht wurden:

mdadm --stop --force /dev/md127 # this failed with the error message "mdadm: Cannot get exclusive access to /dev/md127:Perhaps a running process, mounted filesystem or active volume group?"
fuser /dev/md127 # no output
lsof /dev/md127 # no output
mdadm --fail /dev/md127 /dev/sdb # succeeded
mdadm --remove /dev/md127 /dev/sdb # succeeded
mdadm --fail /dev/md127 /dev/sdc # this failed - "device or resource busy"
mdadm --remove /dev/md127 /dev/sdc # this failed - "device or resource busy"
lvchange -an vg_Name
vgchange -an vg_Name
David Young
quelle
Was wird beim Ausführen gedruckt mount?
Sparticvs

Antworten:

4

Wenn Sie lediglich die Gerätenummer ändern möchten, fügen Sie das Array mit der folgenden Gerätenummer mit der folgenden Gerätenummer zu Ihrer Konfigurationsdatei hinzu:

    echo "ARRAY /dev/md0 level=raid1 num-devices=2 UUID=$(blkid -s UUID -o value /dev/md127) devices=/dev/sdb,/dev/sdc" >> /etc/mdadm.conf

Sobald Sie Ihren RAID in /etc/mdadm.conf abgelegt haben, starten Sie ihn einfach neu und der RAID sollte automatisch unter Verwendung der von Ihnen angegebenen Gerätenummer wieder zusammengesetzt werden. Dies hat den zusätzlichen Vorteil, dass sichergestellt wird, dass Ihr RAID bei jedem Start mit demselben Gerätenamen erstellt wird.

raucht2345
quelle
3

Wenn Sie LVM über mdadm verwenden, löscht LVM manchmal die Device Mapper-Geräte nicht, wenn die Datenträgergruppe deaktiviert wird. Sie können es manuell löschen.

  1. Stellen Sie sicher, dass die Ausgabe von nichts enthält sudo vgdisplay.
  2. Schau rein /dev/mapper/. Neben der controlDatei sollte ein Device Mapper-Gerät vorhanden sein, das nach Ihrer Volume-Gruppe benannt ist, z VolGroupArray-name.
  3. Ausführen sudo dmsetup remove VolGroupArray-name( VolGroupArray-namedurch den Namen des Device Mapper-Geräts ersetzen ).
  4. Sie sollten jetzt ausgeführt werden können sudo mdadm --stop /dev/md0(oder wie auch immer der Name des mdadmGeräts lautet).
Vladimir Panteleev
quelle
Nach vielem googeln brauchte ich das. Vielen Dank!
Fukawi2
Sie, Sir, holen Sie sich heute den Kuchen. Спасибо!
Gaia
2

Können Sie bitte die Ausgabe der folgenden Befehle einfügen?

mdadm -D /dev/md127

mdadm -E /dev/sdc

cat /proc/mdstat

Bitte beachten Sie, dass es möglich ist, den Raid "umzubenennen". Das Umbenennen hängt in diesem Fall von der Superblock-Version ab, die Ihr Raid verwendet.

Um einen Superblock 0.90-Raid umzubenennen, sollten Sie den folgenden Befehl verwenden: mdadm -A /dev/md0 -U super-minor -u <uuid of the array>

Um einen Superblock 1.X-Raid umzubenennen, sollten Sie den folgenden Befehl verwenden: mdadm -A /dev/md0 -U name -N <new name> -u <uuid of the array>

Können Sie mir bitte erklären, warum Sie es umbenennen möchten, da ich es nicht verstanden habe? Der Knotenname md127 wird von Ihren initramfs-Skripten zusammengestellt, da diese von md127 ausgehen. Soweit ich weiß, können Sie die bevorzugte Nebennummer ändern, aber die initramfs-Skripte beginnen unabhängig von der Nebennummer mit dem Zusammenbau des Knotens 127.

teissler
quelle
0

Ich hatte dieses Problem. Ich hatte zwei SATA in CentOS 6.5 gespiegelt und auf 7.5 aktualisiert. Mein 3Ware-Controller wurde nicht mehr unterstützt.

HINWEIS: Ich hatte einen 3Ware-RAID-Controller, aber ich habe mdadm verwendet, um ein Software-RAID auf 6.5 zu erstellen, sodass ich nie ein Hardware-RAID erstellt habe.

Während ich im Computergeschäft einen neuen PCI-SATA-Controller kaufte, beschloss ich, ein weiteres Laufwerk hinzuzufügen und zu einem RAID 5-Setup zu wechseln. Ich konnte kein mkfs auf dem Volume machen; es hieß, ein anderer Prozess habe es benutzt. Ich konnte es nicht stoppen oder entfernen.

Während ich alles versuchte, was mir einfiel, bekam ich folgende Nachricht:

mdadm --fail /dev/sda
mdadm: /dev/sda does not appear to be an md device
[root@TomNAS1 ~]# mdadm /dev/md5
/dev/md5: 3725.78GiB raid5 3 devices, 1 spare. Use mdadm --detail for more detail.
/dev/md5: device 0 in 2 device undetected raid1 /dev/md/2_0. Use mdadm --examine for more detail.

So tat ich:

mdadm --examine /dev/md5
/dev/md5:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : ffd28566:a7b7ad42:b26b218f:452df0ca
  Creation Time : Wed Dec  8 12:52:37 2010
     Raid Level : raid1
  Used Dev Size : 1951311040 (1860.92 GiB 1998.14 GB)
     Array Size : 1951311040 (1860.92 GiB 1998.14 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 2

    Update Time : Mon Jul  2 12:39:31 2012
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0
       Checksum : 59b0bc94 - correct
         Events : 1111864


      Number   Major   Minor   RaidDevice State
this     0       8       19        0      active sync

   0     0       8       19        0      active sync
   1     1       8        3        1      active sync

Beachten Sie das Raid Level RAID 1 (ich hatte immer noch einige Superblocks mit den alten Raid-Informationen), aber ich konnte es immer noch nicht löschen.

Ich habe es endlich getan:

mdadm --stop --scan
[root@TomNAS1 ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] 
unused devices: <none>
[root@TomNAS1 ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] 
unused devices: <none>

Verwenden Sie die --scanOption, anstatt es /dev/md5endlich zu tun. Ich konnte es dann entfernen, die Superblöcke auf Null setzen und es neu erstellen

[root@TomNAS1 ~]# mdadm --remove /dev/md5
mdadm: error opening /dev/md5: No such file or directory
[root@TomNAS1 ~]# mdadm --zero-superblock /dev/sda
[root@TomNAS1 ~]# mdadm --zero-superblock /dev/sdb
[root@TomNAS1 ~]# mdadm --zero-superblock /dev/sdd
[root@TomNAS1 ~]# mdadm -E /dev/md5
mdadm: cannot open /dev/md5: No such file or directory

[root@TomNAS1 ~]# lsblk
NAME               MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                  8:0    0   1.8T  0 disk 
└─sda1               8:1    0   1.8T  0 part 
sdb                  8:16   0   1.8T  0 disk 
└─sdb1               8:17   0   1.8T  0 part 
sdc                  8:32   0 298.1G  0 disk 
├─sdc1               8:33   0     1G  0 part /boot
└─sdc2               8:34   0   297G  0 part 
  ├─centos-root    253:0    0   283G  0 lvm  /
  ├─centos-swap    253:1    0     4G  0 lvm  [SWAP]
  └─centos-dev_shm 253:2    0    10G  0 lvm  
sdd                  8:48   0   1.8T  0 disk 
└─sdd1               8:49   0   1.8T  0 part 
sr0                 11:0    1  1024M  0 rom  


[root@TomNAS1 ~]# mdadm --create /dev/md5 --level=5 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdd1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
[root@TomNAS1 ~]# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] 
md5 : active raid5 sdd1[3] sdb1[1] sda1[0]
      3906762752 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]
      [>....................]  recovery =  0.0% (475180/1953381376) finish=684.9min speed=47519K/sec
      bitmap: 0/15 pages [0KB], 65536KB chunk

unused devices: <none>



[root@TomNAS1 ~]# mkfs.ext4 /dev/md5
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=128 blocks, Stripe width=256 blocks
244178944 inodes, 976690688 blocks
48834534 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=3124756480
29807 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
    102400000, 214990848, 512000000, 550731776, 644972544

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done       

[root@TomNAS1 ~]# 
Joseph Mulkey
quelle
0

Ich denke, dies wurde oben erwähnt, aber nur für den Fall: Wenn Sie ein aktives logisches lvm-Volume definiert haben, das das zu entfernende mdX verwendet, wird mdadm dies ablehnen, bis Sie das logische Volume entfernen, das dieses Laufwerk verwendet, oder Befreie zumindest das md-Laufwerk vom lvm. Sobald Sie das logische Volume entfernt haben, stoppt mdadm den Raid gerne.

Kali
quelle