Como lidar com volumes dinâmicos distribuídos do Linux RAID0 e do Windows no mesmo conjunto de discos rígidos?

Como lidar com volumes dinâmicos distribuídos do Linux RAID0 e do Windows no mesmo conjunto de discos rígidos?

Recentemente, adquiri um disco de 1 TB para complementar meus dois discos de 500 GB e decidi usar alguma forma de RAID neste último. Dividi os discos de 500 GB em duas partições cada. Em seguida, criei um RAID0 usando as primeiras partições e mdadm, e no Windows, um volume distribuído nas segundas partições (convertendo o disco em dinâmico). O volume RAID0 funciona bem no Linux e o volume distribuído funciona bem no Windows. Como faço para acessar o volume distribuído do Linux?

Layout do disco:

# 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 

sdb2e sdc2são as partições que compõem o volume distribuído.

ldmtooldetectaalgo:

# 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"
  ]
}

Parece que detectou o volume RAID0 criado por mdadm, embora o UUID não apareça na saída de mais nada. A execução ldmtool scan /dev/sd[cb]2mostra o mesmo UUID, ldmtool scan -d /dev/sdc2 -d /dev/sdb2fornece uma matriz vazia.

O que posso fazer?

Estou no Arch Linux:

# uname -r
4.2.5-1-ARCH

ldmtool create allfalha, pois tenta trabalhar com o grupo detectado (que é RAID0, não o volume distribuído do Windows):

# 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]
[
]

O volume distribuído do Windows possui apenas um “volume” acima dele.

fdiska saída nem mostra o segundo conjunto de partições nos discos:

# 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.

blkidnão mostra informações sobre /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"

Todos os comandos mostrados até agora foram executados como root.

Responder1

De acordo com man ldmtool, ldmtool create ...criará nós de dispositivos mapeadores de dispositivos que você pode usar (montar, desmontar, etc.) como qualquer outro nó de dispositivo.

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

Crie um dispositivo mapeador de dispositivos para o volume especificado ou para todos os volumes em todos os grupos de discos detectados.

Retorna uma lista dos nomes dos dispositivos mapeadores de dispositivos que foram criados por esta ação. Observe que se já existir um dispositivo para um volume, ele não será retornado nesta lista.

Se ldmtoolo pacote da sua distribuição não vier com a página de manual, envie um relatório de bug. As páginas man devem ser empacotadas com os binários que documentam.

informação relacionada