Table des matières

Raid logiciel chiffré + LVM à l'installation de wheezy

Préalable

ATTENTION !
Vous devez être capable de faire un partitionnement manuel simple. Consultez de la documentation, ou entraînez-vous sur une machine virtuelle à faire un partitionnement manuel simple, voire à mettre en œuvre virtuellement les indications de ce wiki, avant de le réaliser sur vos disques tout neufs !

En cas d'erreur de partitionnement du RAID, il est possible, mais périlleux pour des débutants, de supprimer le raid afin de récupérer ses disques et refaire une installation, même si l'installateur annonce que la configuration du raid est irréversible.

Introduction

Comme le titre l'indique, le but de ce wiki est de donner un exemple de la création d'un raid logiciel avant l'installation du système.

Il s'agira d'un Raid1 construit sur deux disques durs d'une taille de 160 GB, à partir netinst http://debian.mirror.exetel.com.au/debian-cd/7.5.0/amd64/iso-cd/debian-7.5.0-amd64-netinst.iso
(que vous trouverez ici : https://www.debian.org/CD/netinst/)

J'ai crée des partitions séparées pour /root ; /home ; /tmp ; /usr ; /var qui seront chiffrées et configurées en LVM, mais adaptez cela à vos besoin.

J'ai crée une partition séparée pour /boot en dehors de LVM afin de rendre la tache plus facile pour l'installation de grub-pc (alias grub2).
Il est possible de créer une partition / en dehors du LVM, et du chiffrement placée en RAID1 n°0. Mais cela ne permet pas de chiffrer /root. De plus, après de très nombreux essais, il s'est avéré que pour un RAID 5 grub ne peut pas s'installer : il faut alors (avec trois disques), et placé /boot en RAID1, et /root avec les autres partitions en raid5.

Enfin, j'indiquerai comment installer grub2 sur le second disque, puisqu'à l'installation, grub ne s'installe que sur le premier disque.

A savoir : /dev/sda désigne le premier disque et /dev/sdb le deuxième.

Les illustrations sont faites à partir d'une machine virtuelle avec des disques de 10 GB, ne tenez pas compte de la taille des partitions qui figure sur les impressions d'écran.

1) Raid1 + Chiffrement + LVM avant l'installation

1.1) Tout d'abord :

(option avancée ; choix de l'environnement de bureau)

1.2) Partitionnement manuel

Vous devez obtenir ceci :

Choisissez les partitions 1 des deux disques sda et sdb comme sur cette image :

1.3) Paramétrage du périphérique RAID1 n°0

Si vous ne souhaitez pas crypter vos disques, passez au chapitre n°2 “Raid1 + LVM (sans cryptage des disques)”.

1.4) Préparer et configuration du chiffrement sur Raid1 n°1

Cela peut-être très long !

Pour un RAID1 avec deux disques de 160GB, l'opération a pris 10h00 !

1.5) Préparation de la partition RAID1 n°1 pour LVM :

* Sélectionnez volume chiffré (md1_crypt) comme sur l'image ci-dessous :

1.6) Configurer le gestionnaire de volume logique (LVM) :

(Pour une machine de bureau, vous pouvez créer seulement trois volumes logiques : pour / ; swap et home)

Finissez maintenant le partitionnement en sélectionnant chaque espace disque LVM en ext4, du point de montage du même nom que celui du groupe volume correspondant (sauf pour swap), comme image ci-dessous :

Par exemple pour la ligne sélectionnée “volume logique home” comme sur l'image ci-dessus :

Puis sélectionnez en dessous “volume logique root” :

Pour volume logique swap :

Pour volume logique tmp :

Pour volume logique usr :

Pour volume logique var :

Attention à la configuration de RAID0
Sa partition n°1 saute, et il faut la reconfigurer le point de montage, avant de terminer et de lancer l'installation ! Voir l'image ci-dessous

Cette fois tout est bon et on a ceci :

Laissez se dérouler l'installation, sélectionnez le miroir réseau ; répondez à la question sur les statistiques ; choisissez ou non d'installer l'environnement de bureau Debian (mieux vaut apprendre à s'en passer sur un serveur, choisissez aussi parmi les programmes pour les différents types de serveur selon vos besoins

mais n'oubliez surtout pas de répondre “oui” pour installer grub sur le secteur d'amorçage.

Cela l'installera sur le premier disque, il ne restera plus qu'à l'installer manuellement avec quelques lignes de commandes, après avoir redémarrer le système.

Vous pouvez passer au chapitre 3 “installer grub-pc”

2) Raid1 + LVM (sans chiffrement des disques)

Si vous ne souhaitez pas crypter vos disques après avoir suivi le paragraphe n°3 (Paramétrage du périphérique RAID1 n°0), reprenez ici.

Reprenez la suite du chapitre 1 à partir du paragraphe 1.6 :

Configurer le gestionnaire de volumes logiques (LVM)

Encore une fois, n'oubliez pas de configurer à nouveau RAID1 n°0 en ext3 et en point de montage /boot
La configuration saute aussi si on ne met en place sur les partitions raid que le LVM

ON OBTIENT CECI :

Vous pouvez passer au chapitre suivant

3) Installer grub-pc (alias grub2) sur le deuxième disque après l'installation d'un RAID

REPÉRER SES PARTITONS

Au redémarrage du système, qu'il s'agisse d'un raid simple, d'un raid + LVM ou d'un raid + LVM crypté
Il faut installer grub-pc sur le deuxième car à l'installation, il ne s'est installé que sur le secteur d'amorçage du premier disque, celui reconnu comme /dev/sda par le système.

Ainsi en cas de crache de l'un ou l'autre disque, le système pourra redémarrer à partir du système d'amorçage de l'un ou l'autre disque.

Bien évidemment si le raid1 est fait sur trois disques, installer grub-pc sur les deux autres disques, /dev/sdb et /dev/sdc.

df -h 

Le retour après cette installation sur des disques de 160 GB :

retour de la commande
Sys. fich.               Taille Util. Dispo Uti% Monté sur 
rootfs                     2,8G  221M  2,4G   9% / 
udev                        10M     0   10M   0% /dev 
tmpfs                      101M  844K  100M   1% /run 
/dev/mapper/systeme-root   2,8G  221M  2,4G   9% / 
tmpfs                      5,0M     0  5,0M   0% /run/lock 
tmpfs                      201M     0  201M   0% /run/shm 
/dev/md0                   938M   37M  854M   5% /boot 
/dev/mapper/systeme-home   125G  188M  119G   1% /home 
/dev/mapper/systeme-tmp    1,9G   35M  1,8G   2% /tmp 
/dev/mapper/systeme-usr    8,3G  2,4G  5,5G  30% /usr 
/dev/mapper/systeme-var    2,8G  329M  2,3G  13% /var
la commande
fdisk -l

Renvoie sur un RAID pour chaque partition :

retour de la commande
Le disque  /dev/mapper/systeme-xxxx ne contient pas une table de partitions valable.

Ne vous en souciez pas !

Vous pouvez faire (en root) : fdisk -l /dev/sda ou/et fdisk -l /dev/sdb, etc.

VISUALISER SA GRAPPE

cat /proc/mdstat 
retour de la commande
Personalities : [raid1] 
md1 : active raid1 sda2[0] sdb2[1] 
      155181952 blocks super 1.2 [2/2] [UU] 
 
md0 : active raid1 sda1[0] sdb1[1] 
      975296 blocks super 1.2 [2/2] [UU]

On note que [UU] signifie que le raid est fonctionnel.

Ou pour plus de détails :

mdadm --detail /dev/md0

ET/OU

mdadm --detail /dev/md1

RECONSTRUIRE LE RAID et identifier physiquement ses disques

1) Éteignez et débranchez votre unité centrale 8-o
2) débranchez d'abord de la carte mère, le disque dur correspondant à /dev/sdb2 pour bien identifier ses disques et apprendre à relancer la grappe ;
(le dernier disque que vous avez ajouté.) 3) au redémarrage, acceptez les changements détectés par le bios ;
4) une fois la machine re-démarrée :

cat /proc/mdstat
retour de la commande
Personalities : [raid1] 
md1 : active raid1 sda2[0] 
      155181952 blocks super 1.2 [2/1] [U_] 
 
md0 : active raid1 sda1[0] 
      975296 blocks super 1.2 [2/1] [U_] 
 
unused devices: <none>

On note que le raid est dégradé : [U_]

mdadm /dev/md0 -a /dev/sdb1
retour de la commande
mdadm: added /dev/sdb1 

PUIS

mdadm /dev/md1 -a /dev/sdb2 
retour de la commande
mdadm: added /dev/sdb2

ALORS on peut voir le raid se reconstruire :

cat /proc/mdstat 
retour de la commande
Personalities : [raid1] 
md1 : active raid1 sdb2[2] sda2[0] 
      155181952 blocks super 1.2 [2/1] [U_] 
      [>....................]  recovery =  1.1% (1858816/155181952) finish=54.3min speed=46991K/sec 
 
md0 : active raid1 sdb1[2] sda1[0] 
      975296 blocks super 1.2 [2/2] [UU] 
 
unused devices: <none>

OU EN DIRECT :

watch "cat /proc/mdstat"

INSTALLER GRUB-PC sur dev/sdb

ATTENTION CES COMMANDES NE SONT PAS SUFFISANTES
grub-install /dev/sdb 
retour de la commande
Installation finished. No error reported.

PUIS

update-grub 
retour de la commande
Generating grub.cfg ... 
Found linux image: /boot/vmlinuz-3.2.0-4-amd64 
Found initrd image: /boot/initrd.img-3.2.0-4-amd64 
Found Debian GNU/Linux (7.5) on /dev/sdc1 
done 

Néanmoins elles sont nécessaires, avant dpkg-reconfigure grub-pc, sinon vous aurez accès à une configuration graphique du fichier /etc/default/grub, mais vous n'aurez pas accès la page qui permet d'installer grub-pc sur les partitions souhaitées (celle où l'on coche les partitions pour grub, voir plus bas).

Il faut faire ensuite :

dpkg-reconfigure grub-pc
Le paquet grub-pc est en cours de mise à jour. Ce menu permet de choisir     
pour quels périphériques vous souhaitez exécuter la commande                 
grub-install automatiquement.                                                
                                                                            
Il est en général recommandé d'exécuter grub-install automatiquement,        
afin d'éviter la situation où l'image de GRUB est désynchronisée avec        
les modules de GRUB ou le fichier grub.cfg.                                  
                                                                             
Si vous n'avez pas la certitude du périphérique utilisé comme                
périphérique d'amorçage par le BIOS, il est en général conseillé             
d'installer GRUB sur l'ensemble des périphériques.                           
                                                                           
Veuillez noter que GRUB peut également être installé sur les secteurs        
d'amorçage de partitions. Certaines partitions où cela pourrait être nécessaire sont indiquées ici. Cependant, cela impose que GRUB utilise       
le mécanisme « blocklist », ce qui le rend moins fiable et n'est donc        
pas recommandé. 

Tapez la touche Echap

(avec les touches et Espace comme d'habitude)

Périphériques où installer GRUB :  
                        
                │                                              │                
                │    [*] /dev/sda (160041 Mo; ST3160812AS)     │                
                │    [*] /dev/sdb (160041 Mo; VB0160EAVEQ)     │                
                │    [ ] /dev/dm-2 (2998 Mo; systeme-root)     │                
                │    [ ] /dev/md0 (998 Mo; debian-serveur:0)   │                
                │                                              │                
                │                                              │                
                │                    <Ok>                       

et il s'ajoute :

Installation finished. No error reported. 
Installation finished. No error reported. 
Generating grub.cfg ... 
Found background image: .background_cache.png 
Found linux image: /boot/vmlinuz-3.2.0-4-amd64 
Found initrd image: /boot/initrd.img-3.2.0-4-amd64 
done 

VÉRIFIONS QUE GRUB-PC SOIT BIEN INSTALLÉ

1) Éteignez votre machine et débrancher l'unité centrale 8-o ;
2) Débranchez cette fois le disque dur correspondant à /dev/sda ;
3) Ré-allumez votre machine ;

Ça a fonctionné : le système se lance sur le disque /dev/sdb ! 8-)

RECONSTRUIRE LA GRAPPE

1) Éteignez votre machine et débranchez là ; 2) re-branché /dev/sda ; 3) puis faites :

cat /proc/mdstat 
retour de la commande
Personalities : [raid1] 
md1 : active raid1 sdb2[2] 
      155181952 blocks super 1.2 [2/1] [_U] 
 
md0 : active raid1 sdb1[2] 
      975296 blocks super 1.2 [2/1] [_U] 
 
unused devices: <none>

Et oui, cette fois on a [_U] !

4) entrez la commande :

mdadm /dev/md0 -a /dev/sda1 
retour de la commande
mdadm: added /dev/sda1

PUIS

mdadm /dev/md1 -a /dev/sda2 
retour de la commande
mdadm: added /dev/sda2

Et voilà votre raid est en train de se reconstruire !

cat /proc/mdstat 
retour de la commande
Personalities : [raid1] 
md1 : active raid1 sda2[3] sdb2[2] 
      155181952 blocks super 1.2 [2/1] [_U] 
      [>....................]  recovery =  2.9% (4533248/155181952) finish=47.0min speed=53381K/sec 
 
md0 : active raid1 sda1[3] sdb1[2] 
      975296 blocks super 1.2 [2/2] [UU] 

OU

watch "cat  /proc/mdstat"

Et voilà !

Il ne reste plus en cas de crache d'un des disques, de le changer et de reconstruire la grappe. 8-)

Liens utiles

Liens en rapport au sujet :

1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !