Como os nomes dos dispositivos RAID são detectados na inicialização no Ubuntu 10.04

1

Quando eu inicializo meu servidor Ubuntu 10.04 Ele detecta apenas parcialmente as unidades como uma matriz de RAID inativa com um nome engraçado "md_d1". Eu tenho que parar e remover este 'dispositivo' toda vez e então adicionar as novas unidades assim:

arthur@macro:~/Desktop$ cat /proc/mdstat 
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md_d1 : inactive sdd[3](S)
      732574448 blocks super 1.2

unused devices: <none>
arthur@macro:~/Desktop$ sudo mdadm --stop /dev/md_d1
mdadm: stopped /dev/md_d1
arthur@macro:~/Desktop$ sudo mdadm --remove /dev/md_d1
arthur@macro:~/Desktop$ sudo mdadm --incremental /dev/sdd
mdadm: /dev/sdd attached to /dev/md/d1, not enough to start (1).
arthur@macro:~/Desktop$ sudo mdadm --incremental /dev/sdb
mdadm: /dev/sdb attached to /dev/md/d1, not enough to start safely.
arthur@macro:~/Desktop$ sudo mdadm --incremental /dev/sdc
mdadm: /dev/sdc attached to /dev/md/d1, which has been started.

Sou curioso de onde esse nome vem e como os arrays RAID são detectados na inicialização. Por que isso está acontecendo (e seria bom corrigi-lo)

    
por Arthur Ulfeldt 01.07.2010 / 07:44

1 resposta

1

Normalmente, os scripts de inicialização leem /etc/mdadm/mdadm.conf para definições de ARRAY; Na falta que eles fazem algo "sensato", como a digitalização de todos os discos / partições para superblocos. A página man do mdadm sugere:

echo ’DEVICE /dev/hd[a-z] /dev/sd*[a-z]’ > mdadm.conf
mdadm --examine --scan --config=mdadm.conf >> mdadm.conf

This will find arrays which could be assembled from existing IDE and SCSI whole drives (not partitions), and store the information in the format of a config file. This file is very likely to contain unwanted detail, particularly the devices= entries. It should be reviewed and edited before being used as an actual config file.

como ponto de partida para uma configuração decente. A manpage do mdadm.conf fornece alguns exemplos:

DEVICE /dev/sd[bcdjkl]1
DEVICE /dev/hda1 /dev/hdb1

# /dev/md0 is known by its UID.
ARRAY /dev/md0 UUID=3aaa0122:29827cfa:5331ad66:ca767371
# /dev/md1 contains all devices with a minor number of
#   1 in the superblock.
ARRAY /dev/md1 superminor=1
# /dev/md2 is made from precisely these two devices
ARRAY /dev/md2 devices=/dev/hda1,/dev/hdb1

Os nomes que você está vendo são os padrões:

The standard names for non-partitioned arrays (the only sort of md array available in 2.4 and earlier) are either of

          /dev/mdNN
          /dev/md/NN

where NN is a number. The standard names for partitionable arrays (as available from 2.6 onwards) are either of

          /dev/md/dNN
          /dev/md_dNN
    
por 01.07.2010 / 09:03