J'essaie d'obtenir une configuration RAID Intel. Le problème que j'ai, c'est qu'après un redémarrage, le raid n'est pas disponible.
Voici les étapes à suivre pour configurer Intel RAID à l'aide de la commande mdadm. J'ai suivi les étapes sur http://www.intel.com/content/dam/www/public/us/en/documents/white-papers/rst-linux-paper.pdf .
$ Sudo mdadm --detail-platform
Platform : Intel(R) Matrix Storage Manager
Version : 12.0.0.1783
RAID Levels : raid0 raid1 raid10 raid5
Chunk Sizes : 4k 8k 16k 32k 64k 128k
2TB volumes : supported
2TB disks : supported
Max Disks : 6
Max Volumes : 2 per array, 4 per controller
I/O Controller : /sys/devices/pci0000:00/0000:00:1f.2 (SATA)
$ cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
unused devices: <none>
$ Sudo mdadm --create /dev/md/imsm /dev/sd[b-c] -n 2 -e imsm
mdadm: container /dev/md/imsm prepared.
$ Sudo mdadm --create /dev/md/vol0 /dev/md/imsm -n 2 -l 1
mdadm: cannot open device: 11:0
mdadm: array /dev/md/vol0 started.
$ cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md126 : active raid1 sdc[1] sdb[0]
1953511424 blocks super external:/md127/0 [2/2] [UU]
[>....................] resync = 0.4% (8213824/1953511424) finish=192.8min speed=168142K/sec
md127 : inactive sdc[1](S) sdb[0](S)
2210 blocks super external:imsm
unused devices: <none>
$ Sudo mdadm --examine --scan --config=mdadm.conf
ARRAY metadata=imsm UUID=1b6e3d9e:e14f7906:38f86e54:1f85cdcd
ARRAY /dev/md/vol0 container=1b6e3d9e:e14f7906:38f86e54:1f85cdcd member=0 UUID=546b601a:ccfa6f04:2cc1d0f5:aa05edc2
$ Sudo vi /etc/mdadm/mdadm.conf
$ cat /etc/mdadm/mdadm.conf
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#
# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers
# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes
# automatically tag new arrays as belonging to the local system
HOMEHOST <system>
# instruct the monitoring daemon where to send mail alerts
MAILADDR root
# definitions of existing MD arrays
ARRAY metadata=imsm UUID=1b6e3d9e:e14f7906:38f86e54:1f85cdcd
ARRAY /dev/md/vol0 container=1b6e3d9e:e14f7906:38f86e54:1f85cdcd member=0 UUID=546b601a:ccfa6f04:2cc1d0f5:aa05edc2
= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - - - - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - - - - = - = -
J'ai ensuite redémarré ici avec le raid en marche
= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - - = - = - = - = -
$ cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
unused devices: <none>
$ Sudo mdadm --assemble --scan
mdadm: Container /dev/md/imsm0 has been assembled with 2 drives
mdadm: Started /dev/md/vol0 with 2 devices
$ cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md126 : active raid1 sdb[1] sdc[0]
1953511424 blocks super external:/md127/0 [2/2] [UU]
[>....................] resync = 4.0% (78945280/1953511424) finish=30274.0min speed=1024K/sec
md127 : inactive sdc[1](S) sdb[0](S)
6306 blocks super external:imsm
unused devices: <none>
Ainsi, après l'exécution d'une commande d'assembler, le raid est disponible, mais pourquoi ne le trouve-t-il pas après un redémarrage par défaut?
Le système est en marche.
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=13.10
DISTRIB_CODENAME=saucy
DISTRIB_DESCRIPTION="Ubuntu 13.10"
$ uname -a
Linux mdk1 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
Pour les personnes confrontées à un bogue # 1318351 "mdadm n'assemble pas les raids imsm lors du démarrage normal" , affectant Intel RAID (imsm) sous Ubuntu 14 & 15 à le moins, cela a résolu le problème:
Éditez /etc/default/grub
pour avoir:
#GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomdmonddf nomdmonisw"
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
Éditez /etc/default/grub.d/dmraid2mdadm.cfg
pour avoir:
DMRAID2MDADM_TOAPPEND=""
Lancement:
Sudo dpkg-reconfigure mdadm
Sudo update-grub
Sudo update-initramfs -u
Vous pouvez vous arrêter ici si cela résout votre problème. Ci-dessous est d'aller plus loin.
Cela suppose bien sûr que votre /etc/mdadm/mdadm.conf
est bon. Le mien ressemble à ceci pour un NTFS RAID0:
CREATE owner=MYUSERNAME group=disk mode=0775 auto=yes
MAILADDR root
ARRAY /dev/md0 level=container num-devices=2 metadata=imsm UUID=XXXXXXXX:XXXXXXXX:XXXXXXXX:XXXXXXXX devices=/dev/sdb,/dev/sdc
ARRAY /dev/md1 level=raid0 num-devices=2 container=/dev/md0 member=0 UUID=YYYYYYYY:YYYYYYYY:YYYYYYYY:YYYYYYYY devices=/dev/sdb,/dev/sdc auto=md
Il a été généré avec:
Sudo mdadm --assemble --scan
Sudo mdadm --detail --scan --verbose
Et un peu adapté.
Enfin, si les disques sont correctement assemblés au démarrage (visibles dans Nautilus), vous pouvez commencer à jouer avec /etc/fstab
pour monter le disque au démarrage.
Testez toujours votre/etc/fstab avec ceci pour éviter d’être bloqué au démarrage:
Sudo mount -a
Si le démarrage normal échoue après la modification de fstab, démarrez en mode de récupération et accédez à la ligne de commande:
loadkeys fr
mount -o remount,rw /
pico /etc/fstab
fr
pour les claviers français.
La prise en charge des fakeraids d’Intel est nouvelle pour mdadm dans 14.04. Les versions précédentes d'Ubuntu utilisaient dmraid
pour les activer. Notez que, sauf si vous double-amorcez avec Windows, vous devriez éviter complètement le fakeraid et vous en tenir à la mdadm native.
Ajouter
auto=md
vers la ligne appropriée ARRAY dans mdadm.conf:
Avant:
ARRAY /dev/md/vol0 container=1b6e3d9e:e14f7906:38f86e54:1f85cdcd member=0 UUID=546b601a:ccfa6f04:2cc1d0f5:aa05edc2
Après:
ARRAY /dev/md/vol0 container=1b6e3d9e:e14f7906:38f86e54:1f85cdcd member=0 UUID=546b601a:ccfa6f04:2cc1d0f5:aa05edc2 auto=md
Dans mon cas, je n'utilise pas de conteneurs (comme dans le papier Intel), donc je n'ai qu'une seule ligne où je spécifie également le format de métadonnées, comme ci-dessous:
ARRAY /dev/md/hdd level=raid10 metadata=1.0 num-devices=4 UUID=462b55f7:e09bc196:deb847c4:b6be609c name=hdd auto=md
Dans md, les noms de raid ne fonctionnent qu'avec les métadonnées 1.0 ou supérieures. J'espère que cette aide.
J'ai eu le même problème avec un faux raid bios. Comme mon raid est nécessaire pour démarrer, je devais mettre un script dans/usr/share/initramfs-tools/scripts/init-premount pour assembler le raid:
#!/bin/sh
mdadm --assemble --scan
Ensuite, je mets à jour l'initram en lançant la commande:
update-initramfs -u
J'essaie de faire fonctionner mon raid avec dmraid mais seul le set raid0 fonctionnait. raid5 semble fonctionner uniquement avec mdadm. Cependant, avec Ubuntu 12.04, les deux jeux de raids fonctionnaient avec dmraid.
C'est un problème connu:
https://bugs.launchpad.net/ubuntu/+source/mdadm/+bug/1318351
Merci de poster un suivi du bug