Wie verwalte ich Linux RAID0 und dynamische Striped-Volumes von Windows auf demselben Festplattensatz?

Wie verwalte ich Linux RAID0 und dynamische Striped-Volumes von Windows auf demselben Festplattensatz?

Ich habe mir vor Kurzem eine 1-TB-Festplatte als Ergänzung zu meinen beiden 500-GB-Festplatten zugelegt und mich entschieden, auf letzteren eine Art RAID zu verwenden. Ich habe die 500-GB-Festplatten jeweils in zwei Partitionen aufgeteilt. Dann habe ich ein RAID0 mit den ersten Partitionen erstellt und mdadmunter Windows ein Stripeset-Volume auf den zweiten Partitionen (indem ich die Festplatte in ein dynamisches konvertiert habe). Das RAID0-Volume funktioniert unter Linux einwandfrei und das Stripeset-Volume funktioniert unter Windows einwandfrei. Wie greife ich von Linux aus auf das Stripeset-Volume zu?

Datenträgerlayout:

# lsblk /dev/sd[bc] -o NAME,SIZE,TYPE,MAJ:MIN
NAME          SIZE TYPE  MAJ:MIN
sdb         465.8G disk    8:16 
├─sdb1        250G part    8:17 
│ └─md0       500G raid0   9:0  
│   ├─md0p1    40G md    259:0  
│   ├─md0p2   100G md    259:1  
│   └─md0p3   360G md    259:2  
└─sdb2      215.8G part    8:18 
sdc         465.8G disk    8:32 
├─sdc1        250G part    8:33 
│ └─md0       500G raid0   9:0  
│   ├─md0p1    40G md    259:0  
│   ├─md0p2   100G md    259:1  
│   └─md0p3   360G md    259:2  
└─sdc2      215.8G part    8:34 

sdb2und sdc2sind die Partitionen, aus denen das Streifenvolumen besteht.

ldmtoolerkenntetwas:

# ldmtool scan
[
  "c0a36d19-7bcb-11e5-9c2a-0090f5e33807"
]
# ldmtool show diskgroup c0a36d19-7bcb-11e5-9c2a-0090f5e33807
{
  "name" : "BRO3886-PC-Dg0",
  "guid" : "c0a36d19-7bcb-11e5-9c2a-0090f5e33807",
  "volumes" : [
    "Volume1",
    "Volume2",
    "Volume3"
  ],
  "disks" : [
    "Disk1",
    "Disk2"
  ]
}

Es sieht so aus, als ob es das von erstellte RAID0-Volume erkannt hat mdadm, obwohl die UUID in keiner anderen Ausgabe auftaucht. Beim Ausführen ldmtool scan /dev/sd[cb]2wird dieselbe UUID angezeigt, ldmtool scan -d /dev/sdc2 -d /dev/sdb2es ergibt sich ein leeres Array.

Was kann ich machen?

Ich verwende Arch Linux:

# uname -r
4.2.5-1-ARCH

ldmtool create allschlägt fehl, da versucht wird, mit der erkannten Gruppe (RAID0 und nicht das Windows-Stripesetvolume) zu arbeiten:

# ldmtool create all                 
Unable to create volume Volume1 in disk group c0a36d19-7bcb-11e5-9c2a-0090f5e33807: ldm_vol_BRO3886-PC-Dg0_Volume1: Stacking NODE_DEL [verify_udev]
Unable to create volume Volume2 in disk group c0a36d19-7bcb-11e5-9c2a-0090f5e33807: ldm_vol_BRO3886-PC-Dg0_Volume2: Stacking NODE_DEL [verify_udev]
Unable to create volume Volume3 in disk group c0a36d19-7bcb-11e5-9c2a-0090f5e33807: ldm_vol_BRO3886-PC-Dg0_Volume3: Stacking NODE_DEL [verify_udev]
[
]

Das Windows-Stripeletvolume verfügt darüber nur über ein „Volume“.

fdiskDie Ausgabe zeigt nicht einmal den zweiten Satz Partitionen auf den Festplatten:

# fdisk -l /dev/sd[bc]
Disk /dev/sdb: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x00000c35

Device     Boot Start       End   Sectors   Size Id Type
/dev/sdb1          63 976771119 976771057 465.8G 42 SFS

Partition 1 does not start on physical sector boundary.
Disk /dev/sdc: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x000b5336

Device     Boot Start       End   Sectors   Size Id Type
/dev/sdc1          63 976771119 976771057 465.8G 42 SFS

Partition 1 does not start on physical sector boundary.

blkidzeigt keine Informationen zu /dev/sd[bc]2:

# blkid            
/dev/sdc1: UUID="e55a4863-d81c-3f39-3daf-44e995671ffb" UUID_SUB="3f774ed1-d5b1-ac30-4eb0-44b490ab96ee" LABEL="ica-ext:0" TYPE="linux_raid_member"
/dev/sdb1: UUID="e55a4863-d81c-3f39-3daf-44e995671ffb" UUID_SUB="c906ce18-e525-32f0-cedf-01ef0e3068a3" LABEL="ica-ext:0" TYPE="linux_raid_member"
/dev/md0p1: LABEL="arch" UUID="046a554b-d9f5-4b23-82e6-ffaeb98284aa" TYPE="ext4" PARTUUID="000da16b-01"
/dev/md0p2: LABEL="devel" UUID="69624d11-f53d-463e-b5c8-5ec417401d33" TYPE="ext4" PARTUUID="000da16b-02"
/dev/md0p3: LABEL="var" UUID="ec253608-fff7-4d66-80f1-3fcb9e09e5f8" TYPE="ext4" PARTUUID="000da16b-03"
/dev/md0: PTUUID="000da16b" PTTYPE="dos"

Alle bisher angezeigten Befehle wurden als Root ausgeführt.

Antwort1

Gemäß werden Device-Mapper-Geräteknoten erstellt, die Sie wie jeden anderen Geräteknoten verwenden (mounten, unmounten usw.) können man ldmtool.ldmtool create ...

create {volume { disk group GUID } { volume name } | all}

Erstellen Sie ein Device-Mapper-Gerät entweder für das angegebene Volume oder für alle Volumes in allen erkannten Datenträgergruppen.

Gibt eine Liste der Device-Mapper-Gerätenamen zurück, die durch diese Aktion erstellt wurden. Beachten Sie, dass ein für ein Volume bereits vorhandenes Gerät nicht in dieser Liste zurückgegeben wird.

Wenn das Paket Ihrer Distribution ldmtoolnicht mit der Manpage geliefert wird, senden Sie einen Fehlerbericht. Manpages sollten mit den Binärdateien gepackt werden, die sie dokumentieren.

verwandte Informationen