Migration système existant RHEL5 en RAID1

Résolu/Fermé
cdriba - Modifié par cdriba le 28/02/2011 à 16:02
alaincl Messages postés 2 Date d'inscription mardi 13 mai 2008 Statut Membre Dernière intervention 30 juin 2011 - 30 juin 2011 à 11:16
Bonjour,

j'ai un système qui tourne sous RHEL5 avec plusieurs intallations de réalisées: serveur APACHE, MySql ...
et je cherche pour des raisons de sécurité à modifier l'ensemble en ajoutant un disque supplémentaire en RAID1 (logiciel)

Je cherche une méthode pour réaliser ceci sans recommencer l'installation complète
Je sais que ceci peut se faire sous DEBIAN: http://www.olivier2t.com/index.php?option=com_content&view=article&id=13:migration-dun-systeme-existant-sous-debian-lenny-en-raid-1&catid=3:linux&Itemid=10
Migration d'un système existant sous Debian Lenny en RAID 1

J'essaie de le faire sous RHEL5 en extrapolant mais il me manque des informations et mes tests ne sont pas concluants!

Ma configuration:

# sfdisk -l

Disk /dev/hda: 155061 cylinders, 16 heads, 63 sectors/track
Warning: The partition table looks like it was made
for C/H/S=*/255/63 (instead of 155061/16/63).
For this listing I'll assume that geometry.
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

Device Boot Start End #cyls #blocks Id System
/dev/hda1 * 0+ 1957 1958- 15727603+ 83 Linux
/dev/hda2 1958 2479 522 4192965 82 Linux swap / Solaris
/dev/hda3 2480 9728 7249 58227592+ 83 Linux
/dev/hda4 0 - 0 0 0 Empty



Quelqu'un a t'il réalisé ce type d'opération?

Merci d'avance

A voir également:

2 réponses

mamiemando Messages postés 33346 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 novembre 2024 7 803
2 mars 2011 à 00:53
Jamais essayé mais le tutoriel si on omet ce qui précède "préparation du raid1" me paraît correct pour d'autres distributions.
0
en fait mkinitramfs n'existe pas en RHEL5 donc il me gfaut trouver une nouvelle méthode
j'y suis presque arrivé mais au boot j'ai un message :
mdadm : /dev/hdb1 has no superblock assembly aborted (pas de plantage à ce niveau là )
et par la suite il fait un check de /local et il trouve une incohérence netre la taille dans les superblocks et la taille réelle!
je me suis inspiré également de
http://www.hamstar.co.nz/2009/11/29/migrating-to-a-raid1-array-in-rhel5-4/

j'ai donc un souci avec le disque / sur lequel j'étais booté au départ
comme si le passage par le live CD n'avait rien apporté lors de la création du md0!!


mes traces:

The system is going down for system halt NOW!
login as: root
root@frlanzf00522's password:
/usr/bin/xauth: creating new authority file /root/.Xauthority
[root@frlanzf00522 ~]# df -k .
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda1 15235040 6969416 7479244 49% /
[root@frlanzf00522 ~]# cls
-bash: cls: command not found
[root@frlanzf00522 ~]# clear
[root@frlanzf00522 ~]# df -k .
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda1 15235040 6969420 7479240 49% /
[root@frlanzf00522 ~]# sfdisk -l

Disk /dev/hda: 155061 cylinders, 16 heads, 63 sectors/track
Warning: The partition table looks like it was made
for C/H/S=*/255/63 (instead of 155061/16/63).
For this listing I'll assume that geometry.
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

Device Boot Start End #cyls #blocks Id System
/dev/hda1 * 0+ 1957 1958- 15727603+ 83 Linux
/dev/hda2 1958 2479 522 4192965 82 Linux swap / Solaris
/dev/hda3 2480 9728 7249 58227592+ 83 Linux
/dev/hda4 0 - 0 0 0 Empty
[root@frlanzf00522 ~]# vi /var/adm/atria/c
cache/ ccmfc/ clearcase_adm.readme config/
[root@frlanzf00522 ~]# vi /var/adm/atria/config/rgy_region.conf
[root@frlanzf00522 ~]#
Broadcast message from root (Thu Mar 3 14:02:32 2011):

The system is going down for system halt NOW!
login as: root
root@frlanzf00522's password:
/usr/bin/xauth: creating new authority file /root/.Xauthority
[root@frlanzf00522 ~]# df -k .
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hdb1 15235040 7036224 7412436 49% /
[root@frlanzf00522 ~]# more /var/adm/atria/config/rgy_region.conf
serv01_unix
[root@frlanzf00522 ~]# vi /var/adm/atria/config/rgy_region.conf
[root@frlanzf00522 ~]# sfdisk -l

Disk /dev/hda: 155061 cylinders, 16 heads, 63 sectors/track
Warning: The partition table looks like it was made
for C/H/S=*/255/63 (instead of 155061/16/63).
For this listing I'll assume that geometry.
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

Device Boot Start End #cyls #blocks Id System
/dev/hda1 * 0+ 1957 1958- 15727603+ 83 Linux
/dev/hda2 1958 2479 522 4192965 82 Linux swap / Solaris
/dev/hda3 2480 9728 7249 58227592+ 83 Linux
/dev/hda4 0 - 0 0 0 Empty

Disk /dev/hdb: 155061 cylinders, 16 heads, 63 sectors/track
Warning: The partition table looks like it was made
for C/H/S=*/255/63 (instead of 155061/16/63).
For this listing I'll assume that geometry.
Units = cylinders of 8225280 bytes, blocks of 1024 bytes, counting from 0

Device Boot Start End #cyls #blocks Id System
/dev/hdb1 * 0+ 1957 1958- 15727603+ 83 Linux
/dev/hdb2 1958 2479 522 4192965 82 Linux swap / Solaris
/dev/hdb3 2480 9728 7249 58227592+ 83 Linux
/dev/hdb4 0 - 0 0 0 Empty
[root@frlanzf00522 ~]# umount /local
[root@frlanzf00522 ~]# swapoff -a
[root@frlanzf00522 ~]# vi /etc/mdadm.conf

DEVICE /dev/hd[ab][123]
ARRAY /dev/md0 devices=/dev/hda1,/dev/hdb1
ARRAY /dev/md1 devices=/dev/hda2,/dev/hdb2
ARRAY /dev/md2 devices=/dev/hda3,/dev/hdb3
~

[root@frlanzf00522 ~]# vi /boot/grub/device.map

# this device map was generated by anaconda
(hd0) /dev/hdb
(hd1) /dev/hda

[root@frlanzf00522 ~]# vi /boot/grub/grub.conf
[root@frlanzf00522 ~]#
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,0)
# kernel /boot/vmlinuz-version ro root=/dev/hdb1
# initrd /boot/initrd-version.img
#boot=/dev/hdb
default=1
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title RAID Scientific Linux SL (2.6.18-194.26.1.el5PAE)
root (hd1,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5PAE ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5PAE.img
title RAID Scientific Linux SL (2.6.18-194.26.1.el5)
root (hd1,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5 ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5.img
title RAID Scientific Linux (2.6.18-194.3.1.el5)
root (hd1,0)
kernel /boot/vmlinuz-2.6.18-194.3.1.el5 ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.3.1.el5.img
title NON-RAID Scientific Linux SL (2.6.18-194.26.1.el5PAE)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5PAE ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5PAE.img
title NON-RAID Scientific Linux SL (2.6.18-194.26.1.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5 ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5.img
title NON-RAID Scientific Linux (2.6.18-194.3.1.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.3.1.el5 ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.3.1.el5.img
~

[root@frlanzf00522 ~]# df -k .
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hdb1 15235040 7036288 7412372 49% /
[root@frlanzf00522 ~]# mdadm -C /dev/md0 --level=raid1 --raid-devices=2 --force /dev/hda1 missing
mdadm: /dev/hda1 appears to contain an ext2fs file system
size=15727600K mtime=Thu Mar 3 13:56:35 2011
Continue creating array? y
mdadm: array /dev/md0 started.
[root@frlanzf00522 ~]# mdadm -C /dev/md2 --level=raid1 --raid-devices=2 --force /dev/hda3 /dev/hdb3
mdadm: /dev/hda3 appears to contain an ext2fs file system
size=58227592K mtime=Thu Mar 3 13:56:35 2011
mdadm: /dev/hdb3 appears to contain an ext2fs file system
size=58227592K mtime=Thu Mar 3 14:03:55 2011
Continue creating array? y
mdadm: array /dev/md2 started.
[root@frlanzf00522 ~]# mdadm -C /dev/md1 --level=raid1 --raid-devices=2 --force /dev/hda2 /dev/hdb2
mdadm: /dev/hda2 appears to be part of a raid array:
level=raid1 devices=2 ctime=Wed Mar 2 17:11:39 2011
mdadm: /dev/hdb2 appears to be part of a raid array:
level=raid1 devices=2 ctime=Wed Mar 2 17:11:39 2011
Continue creating array? y
mdadm: array /dev/md1 started.
[root@frlanzf00522 ~]# watch -n 2 cat /proc/mdstat
[root@frlanzf00522 ~]#

[root@frlanzf00522 ~]# mkinitrd --preload=raid1 --with=raid1 --builtin=raid1 --force-scsi-probe --force-raid-probe /boot/initrd-'uname -r'-raid.img 'uname -r'
[root@frlanzf00522 ~]#

[root@frlanzf00522 ~]# mkswap /dev/md1
Setting up swapspace version 1, size = 4293521 kB
[root@frlanzf00522 ~]# watch -n 2 cat /proc/mdstat

[root@frlanzf00522 ~]# e2label /dev/hdb1
/
[root@frlanzf00522 ~]# e2label /dev/hdb2
e2label: Bad magic number in super-block while trying to open /dev/hdb2
Couldn't find valid filesystem superblock.
[root@frlanzf00522 ~]# e2label /dev/hdb3
/local
[root@frlanzf00522 ~]#

[root@frlanzf00522 ~]# e2label /dev/md0 /
[root@frlanzf00522 ~]# e2label /dev/md2 /local

[root@frlanzf00522 ~]# more /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/local /local ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP-hdb2 swap swap defaults 0 0
test.iso /mnt/iso udf,iso9660 noauto,loop,owner,user,rw 0 0
[root@frlanzf00522 ~]# mkswap -L SWAP /dev/md1
Setting up swapspace version 1, size = 4293521 kB
LABEL=SWAP, no uuid
[root@frlanzf00522 ~]#

[root@frlanzf00522 ~]# vi /etc/fstab
[root@frlanzf00522 ~]# more /etc/fstab
LABEL=/ / ext3 defaults 1 1
LABEL=/local /local ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
LABEL=SWAP swap swap defaults 0 0
test.iso /mnt/iso udf,iso9660 noauto,loop,owner,user,rw 0 0
[root@frlanzf00522 ~]#


[root@frlanzf00522 ~]# mkfs.ext3 /dev/md0
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
1966080 inodes, 3931872 blocks
196593 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4026531840
120 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 39 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@frlanzf00522 ~]#


[root@frlanzf00522 ~]# e2label /dev/md1
e2label: Bad magic number in super-block while trying to open /dev/md1
Couldn't find valid filesystem superblock.
[root@frlanzf00522 ~]# e2label /dev/md0

[root@frlanzf00522 ~]# e2label /dev/md2
/local
[root@frlanzf00522 ~]# e2label /dev/md0 "/"
[root@frlanzf00522 ~]# e2label /dev/md0
/
[root@frlanzf00522 ~]#


[root@frlanzf00522 ~]# watch -n 2 cat /proc/mdstat

Every 2.0s: cat /proc/mdstat Thu Mar 3 14:54:35 2011

Personalities : [raid1]
md1 : active raid1 hdb2[1] hda2[0]
4192896 blocks [2/2] [UU]

md2 : active raid1 hdb3[1] hda3[0]
58227520 blocks [2/2] [UU]

md0 : active raid1 hda1[0]
15727488 blocks [2/1] [U_]

unused devices: <none>


puis j'ai rebooté sur un live CD RHEL5 pour poursuivre


mdadm --create /dev/md0 --level 1 --raid-devices=2 missing /dev/hda1 --assume-clean

mkdir /mnt/md0
mkdir /mnt/hdb1
mount /dev/hdb1 /mnt/hdb1
mount /dev/md0 /mnt/md0
cp -dpRx /mnt/hdb1/* /mnt/md0/

mdadm --add /dev/md0 /dev/hdb1

watch -n 2 cat /proc/mdstat
jusque ce soit terminé


swapoff -a
mkswapp -L SWAP-hdb2
puisque la première fois j'avais une insulte sur le fait qu'il ne trouvait pas ce LABEL
0
mamiemando Messages postés 33346 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 novembre 2024 7 803
3 mars 2011 à 22:26
Je ne sais pas si ça va t'aider car malheureusement je ne travaille qu'avec des debian, donc cet outil n'existe peut être pas avec RHEL5, mais pour générer /etc/mdadm/mdadm.conf on utilise conjointement :

dpkg-reconfigure mdadm


(régénère la configuration par défaut, cette commande n'existera pas sous RHEL mais concrètement elle n'apporterait pas grand chose dans ton cas).

/usr/share/mdadm/mkconf force-generate /etc/mdadm/mdadm.conf


Ceci dit ta configuration raid n'a pas l'air fausse à première vue.

et par la suite il fait un check de /local et il trouve une incohérence netre la taille dans les superblocks et la taille réelle!

Tu lances quelle commande et quel est le résultat exact (un copier coller pour que je puisse faire une recherche google).

Bonne chance
0
En fait je suis parvenu à créer mon raid... enfin presque
puisque au boot le systeme se plante en kernel Panic

mon fstab
/dev/md0 / ext3 defaults 1 1
/dev/md2 /local ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/md1 swap swap defaults 0 0
test.iso /mnt/iso udf,iso9660 noauto,loop,owner,user,rw 0 0

j'ai un problème avec le ligne suivantes qui ne sont pas montées
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
je ne sais pas à quoi ceci correspond puisqu'il n'y a aps de /dev associé lordsque je fais df -k en étant par exemple dans /proc

j'ai essayer avec :

/dev/md0 / ext3 defaults 1 1
/dev/md2 /local ext3 defaults 1 2
/dev/md0/dev /dev/pts devpts gid=5,mode=620 0 0
/dev/md0sys /sys sysfs defaults 0 0
/dev/md0/proc /proc proc defaults 0 0
/dev/md1 swap swap defaults 0 0

sans plus de succès

Le message au boot (pas de copie d'écran et pour cause le boot ne se fait pas)

booting 'Raid .......
root (hd0,0)
file system type is ext2fs, partition type 0x83
Kernel /boot/vmlinuz....
..........
initrd /boot/initrd.....

Memory for crash kernel....
red Hart nash version .....
hub....
mount could not find filesystem '/dev/root'
setuproot : moving to /dev failed No such file or directory
setuproot : error mounting /proc: No such file or directory
setuproot : error mounting /sys: No such file or directory
switch root not syncing : attempt to kill init

Merci de votre aide...
0
En fait je suis parvenu à créer mon raid... enfin presque
puisque au boot le systeme se plante en kernel Panic

mon fstab
/dev/md0 / ext3 defaults 1 1
/dev/md2 /local ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/md1 swap swap defaults 0 0
test.iso /mnt/iso udf,iso9660 noauto,loop,owner,user,rw 0 0

j'ai un problème avec le ligne suivantes qui ne sont pas montées
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
je ne sais pas à quoi ceci correspond puisqu'il n'y a aps de /dev associé lordsque je fais df -k en étant par exemple dans /proc

j'ai essayer avec :

/dev/md0 / ext3 defaults 1 1
/dev/md2 /local ext3 defaults 1 2
/dev/md0/dev /dev/pts devpts gid=5,mode=620 0 0
/dev/md0sys /sys sysfs defaults 0 0
/dev/md0/proc /proc proc defaults 0 0
/dev/md1 swap swap defaults 0 0

sans plus de succès

Le message au boot (pas de copie d'écran et pour cause le boot ne se fait pas)

booting 'Raid .......
root (hd0,0)
file system type is ext2fs, partition type 0x83
Kernel /boot/vmlinuz....
..........
initrd /boot/initrd.....

Memory for crash kernel....
red Hart nash version .....
hub....
mount could not find filesystem '/dev/root'
setuproot : moving to /dev failed No such file or directory
setuproot : error mounting /proc: No such file or directory
setuproot : error mounting /sys: No such file or directory
switch root not syncing : attempt to kill init

Merci de votre aide...
0
mamiemando Messages postés 33346 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 8 novembre 2024 7 803
7 mars 2011 à 18:30
C'est vraiment bizarre ces /dev/md0/{dev,sys,proc} je n'ai jamais vu cette syntaxe pour du RAID sous debian. Peut-être grâce au fameux mkinitramfs. En général on trouve plutôt des syntaxes comme celle-ci pour lvm. Tu es sûr de ton coup?

De toute façon il faut que tu voies si tu arrives à faire tes mount au moins sans reboot. Pour que ton système soit amorçable il faut avoir accès au moins à /boot (qui contient le kernel et qui ne peut pas être chiffré par exemple. Tout le reste peut être monté a posteriori (c'est typiquement ce qui se passe quand on fait du luks avec lvm2).

Normalement ton kernel produit dans /dev (s'il prend en charge le RAID et le disque dur) les devices associés à tes partitions. Ensuite, s'il prend en charge le système de fichiers utilisé sur une partition, il est possible de monter cette partition.

Je ne sais pas si ça t'aidera mais voici typiquement ce à quoi ça ressemble :

proc            /proc           proc    defaults        0       0
/dev/mapper/vg0-root /               ext4    errors=remount-ro 0       1
/dev/sda1 /boot           ext2    defaults        0       2
/dev/mapper/vg0-swap_1 none            swap    sw              0       0
/dev/sdb1       /media/cdrom0   udf,iso9660 user,noauto     0       0


Bonne chance
0
alaincl Messages postés 2 Date d'inscription mardi 13 mai 2008 Statut Membre Dernière intervention 30 juin 2011
30 juin 2011 à 11:16
La réponse au problème:

Faire l'état des lieux après l'installation d'un disque dur IDE supplémentaire

(Attention , après l'installation du nouveau disque dur et le démarrage du PC, le disque dur actif doit être celui sur lequel les données à mirrorer sont présentes)

dans le cas présent, le disque dur ajouté est configuré de manière identique au disque dur initial et de même marque/type donc risque d'erreur lors de la création du RAID

[root@mon_système ]# fdisk -l

Disk /dev/hda : 80.0 GB, 80026361856 bytes
16 heads, 63 sectors/track, 155061 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes

Device Boot Start End Blocks Id System
/dev/hda1 * 1 31206 15727603+ 83 Linux
/dev/hda2 31206 39525 4192965 82 Linux swap / Solaris
/dev/hda3 39526 155056 58227592+ 83 Linux

Disk /dev/hdb : 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/hdb1 * 1 1958 15727603+ 83 Linux
/dev/hdb2 1959 2480 4192965 82 Linux swap / Solaris
/dev/hdb3 2481 9729 58227592+ 83 Linux

Configurer les partitions du nouveau disque dur pour que celles ci soient en Linux raid autodetect



[root@mon_système ]# fdisk /dev/hda

The number of cylinders for this disk is set to 155061.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with :
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help) : t
Partition number (1-4) : 1
Hex code (type L to list codes) : fd
Changed system type of partition 1 to fd (Linux raid autodetect)

Command (m for help) : t
Partition number (1-4) : 2
Hex code (type L to list codes) : fd
Changed system type of partition 2 to fd (Linux raid autodetect)

Command (m for help) : t
Partition number (1-4) : 3
Hex code (type L to list codes) : fd
Changed system type of partition 3 to fd (Linux raid autodetect)

Command (m for help) : w
The partition table has been altered !

Calling ioctl() to re-read partition table.
Syncing disks.



Vérification :



[root@mon_système ]# fdisk -l

Disk /dev/hda : 80.0 GB, 80026361856 bytes
16 heads, 63 sectors/track, 155061 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes

Device Boot Start End Blocks Id System
/dev/hda1 * 1 31206 15727603+ 83 Linux raid autodetect
/dev/hda2 31206 39525 4192965 82 Linux raid autodetect
/dev/hda3 39526 155056 58227592+ 83 Linux raid autodetect

Disk /dev/hdb : 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/hdb1 * 1 1958 15727603+ 83 Linux
/dev/hdb2 1959 2480 4192965 82 Linux swap / Solaris
/dev/hdb3 2481 9729 58227592+ 83 Linux

Vérifier qu'il n'y a pas de précédentes installation résiduelles de RAID

[root@mon_système ]# mdadm -zero-superblock /dev/hda1
mdadm : Unrecognised md component device - /dev/hda1
[root@mon_système ]# mdadm -zero-superblock /dev/hda2
mdadm : Unrecognised md component device - /dev/hda2
[root@mon_système ]# mdadm -zero-superblock /dev/hda3
mdadm : Unrecognised md component device - /dev/hda3



Création des volumes RAID 1

[root@mon_système ]# mdadm -create /dev/md0 -level=1 -raid-disks=2 missing /dev/hda1
mdadm : /dev/hda1 appears to contain an ext2fs file system
size=15727600K mtime=Thu Mar 17 16:04:01 2011
Continue creating array ? y
mdadm : array /dev/md0 started.
[root@mon_système ]# mdadm -create /dev/md1 -level=1 -raid-disks=2 missing /dev/hda2
mdadm : array /dev/md1 started.
[root@mon_système ]# mdadm -create /dev/md2 -level=1 -raid-disks=2 missing /dev/hda3
mdadm : /dev/hda3 appears to contain an ext2fs file system
size=58227592K mtime=Thu Mar 17 16:04:01 2011
Continue creating array ? y
mdadm : array /dev/md2 started.
[root@mon_système ]# cat /proc/mdstat
Personalities : [raid1]
md2 : active raid1 hda3[1]
58227520 blocks [2/1] [_U]

md1 : active raid1 hda2[1]
4192896 blocks [2/1] [_U]

md0 : active raid1 hda1[1]
15727488 blocks [2/1] [_U]

unused devices :



Formatages des volumes RAID créés

[root@mon_système ]# mkfs.ext3 /dev/md0
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type : Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
1966080 inodes, 3931872 blocks
196593 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4026531840
120 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks :
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Writing inode tables : done
Creating journal (32768 blocks) : done
Writing superblocks and filesystem accounting information : done

This filesystem will be automatically checked every 34 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@mon_système ]# mkswap -L SWAP /dev/md1
Setting up swapspace version 1, size = 4293521 kB
LABEL=SWAP, no uuid
[root@mon_système ]# mkfs.ext3 /dev/md2
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type : Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
7290880 inodes, 14556880 blocks
727844 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
445 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks :
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424

Writing inode tables : done
Creating journal (32768 blocks) : done
Writing superblocks and filesystem accounting information : done

This filesystem will be automatically checked every 38 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.



Recherche de la conf RAID

[root@mon_système ]# mdadm -examine -scan > /etc/mdadm.conf
[root@mon_système ]# cat /etc/mdadm.conf
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=3cbafed9:14e6fc12:1bc439cd:ae0c4217
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=f49db6a7:8c9eca24:a83f1833:09b2682f
ARRAY /dev/md2 level=raid1 num-devices=2 UUID=d3420a22:6d1f724b:9e7d3dfe:f38e9eea

Mise à jour du contenu des VOLUMES RAID

[root@mon_système ]# mkdir /mnt/md0
[root@mon_système ]# mkdir /mnt/md2
[root@mon_système ]# mount /dev/md0 /mnt/md0
[root@mon_système ]#
[root@mon_système ]# mount /dev/md2 /mnt/md2

Mise à jour de la table des montages au boot (fstab)

remplacer les LABEL par leurs correspondance RAID

[root@mon_système ]# vi /etc/fstab
[root@mon_système ]# cat /etc/fstab
/dev/md0 / ext3 defaults 1 1
/dev/md2 /local ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/md1 swap swap defaults 0 0
test.iso /mnt/iso udf,iso9660 noauto,loop,owner,user,rw 0 0
[root@mon_système ]# vi /etc/mtab
[root@mon_système ]# cat /etc/mtab
/dev/md0 / ext3 rw 0 0
proc /proc proc rw 0 0
sysfs /sys sysfs rw 0 0
devpts /dev/pts devpts rw,gid=5,mode=620 0 0
/dev/md2 /local ext3 rw 0 0
tmpfs /dev/shm tmpfs rw 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw 0 0
sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0
mon_système :/dev/mvfs /view mvfs rw,viewroot,nosuid 0 0
/dev/md0 /mnt/md0 ext3 rw 0 0
/dev/md2 /mnt/md2 ext3 rw 0 0



Mise à jour du GRUB BOOT LOADER : fichier grub.conf

(hd0,0) puisque c'est celui qui est en RAID, sinon au reboot il sera impossible d'ajouter hdb1 à /dev/md0 (hdb1 déjà utilisé)

[root@mon_système ]# cat /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE : You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,0)
# kernel /boot/vmlinuz-version ro root=/dev/hdb1
# initrd /boot/initrd-version.img
#boot=/dev/hdb
default=1
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
title Scientific Linux SL (2.6.18-194.26.1.el5PAE)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5PAE ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5PAE.img
title Scientific Linux SL (2.6.18-194.26.1.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5 ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5.img
title Scientific Linux (2.6.18-194.3.1.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.3.1.el5 ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.3.1.el5.img



DEVIENT

[root@mon_système ]# vi /boot/grub/grub.conf
[root@mon_système ]# cat /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE : You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,0)
# kernel /boot/vmlinuz-version ro root=/dev/hdb1
# initrd /boot/initrd-version.img
#boot=/dev/hdb
default=1
fallback=1
timeout=5
splashimage=(hd1,0)/boot/grub/splash.xpm.gz
hiddenmenu
title Scientific Linux SL (2.6.18-194.26.1.el5PAE)
root (hd1,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5PAE ro root=/dev/md0 selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5PAE.img
title Scientific Linux SL (2.6.18-194.26.1.el5)
root (hd1,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5 ro root=/dev/md0 selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5.img
title Scientific Linux (2.6.18-194.3.1.el5)
root (hd1,0)
kernel /boot/vmlinuz-2.6.18-194.3.1.el5 ro root=/dev/md0 selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.3.1.el5.img
title Scientific Linux SL (2.6.18-194.26.1.el5PAE)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5PAE ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5PAE.img
title Scientific Linux SL (2.6.18-194.26.1.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5 ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5.img
title Scientific Linux (2.6.18-194.3.1.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.3.1.el5 ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.3.1.el5.img



Création des RAMDISK appropriés

[root@mon_système ]# mv /boot/initrd-'uname -r'.img /boot/initrd-'uname -r'.img_orig
[root@mon_système ]# mv /boot/initrd-'uname -r'PAE.img /boot/initrd-'uname -r'PAE.img_orig
[root@mon_système ]# mv /boot/initrd-2.6.18-194.3.1.el5.img /boot/initrd-2.6.18-194.3.1.el5.img_orig
[root@mon_système ]# mkinitrd /boot/initrd-'uname -r'.img 'uname -r'
[root@mon_système ]#mkinitrd /boot/initrd-'uname -r'PAE.img 'uname -r'PAE
[root@mon_système ]# mkinitrd /boot/initrd-2.6.18-194.3.1.el5.img 2.6.18-194.3.1.el5
[root@mon_système ]# ls /boot
config-2.6.18-194.26.1.el5 initrd-2.6.18-194.26.1.el5PAE.img_orig System.map-2.6.18-194.26.1.el5PAE
config-2.6.18-194.26.1.el5PAE initrd-2.6.18-194.3.1.el5.img System.map-2.6.18-194.3.1.el5
config-2.6.18-194.3.1.el5 initrd-2.6.18-194.3.1.el5.img_orig vmlinuz-2.6.18-194.26.1.el5
grub symvers-2.6.18-194.26.1.el5.gz vmlinuz-2.6.18-194.26.1.el5PAE
initrd-2.6.18-194.26.1.el5.img symvers-2.6.18-194.26.1.el5PAE.gz vmlinuz-2.6.18-194.3.1.el5
initrd-2.6.18-194.26.1.el5.img_orig symvers-2.6.18-194.3.1.el5.gz
initrd-2.6.18-194.26.1.el5PAE.img System.map-2.6.18-194.26.1.el5



Copie des données d'origine sur les disques RAID

[root@mon_système ]# cd /local
[root@mon_système local]# cp -dpRx . /mnt/md2
[root@mon_système local]# cd /
[root@mon_système /]# cp -dpRx / /mnt/md0
You have new mail in /var/spool/mail/root



Préparation du GRUB



[root@mon_système /]# grub
Probing devices to guess BIOS drives. This may take a long time.

GNU GRUB version 0.97 (640K lower / 3072K upper memory)

[ Minimal BASH-like line editing is supported. For the first word, TAB
lists possible command completions. Anywhere else TAB lists the possible
completions of a device/filename.]

grub> root (hd0,0)
Filesystem type is ext2fs, partition type 0xfd

grub> setup (hd0)
Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd0)"... 15 sectors are embedded.
succeeded
Running "install /boot/grub/stage1 (hd0) (hd0)1+15 p (hd0,0)/boot/grub/stage2 /boot/grub/grub.conf"... succeeded
Done.

grub> root (hd1,0)
Filesystem type is ext2fs, partition type 0x83

grub> setup (hd1)
Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd1)"... 15 sectors are embedded.
succeeded
Running "install /boot/grub/stage1 (hd1) (hd1)1+15 p (hd1,0)/boot/grub/stage2 /boot/grub/grub.conf"... succeeded
Done.

grub>



Reboot

Nous devons démarrer sur le RAID

[root@mon_système /]# sync
[root@mon_système /]# sync
[root@mon_système /]# sync
[root@mon_système /]# reboot

Broadcast message from root (pts/3) (Thu Mar 17 18:17:12 2011) :

The system is going down for reboot NOW !
[root@mon_système /]#

Attention si dans le grub.conf, le splashimage=(hd1,0)/boot/grub/splash.xpm.gz est mis sur (hd0,0), il est nécessaire de le modifier
après coup sur /dev/md0 et /dev/hdb1(après les montages utiles) pour les mettre en splashimage=(hd1,0)/boot/grub/splash.xpm.gz car pour,
par la suite, faire le mdadm -add /dev/md0 /dev/hdb1, hdb1 est busy !!!!!!!!

CA MARCHE !!!!!

login as : root
root@mon_système's password :
Last login : Thu Mar 17 17:41:13 2011 from frlann0l018462.fr.alcatel-lucent.com
[root@mon_système ]#

Le RAID est en mode dégradé

[root@mon_système ]# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 hda2[1]
4192896 blocks [2/1] [_U]

md2 : active raid1 hda3[1]
58227520 blocks [2/1] [_U]

md0 : active raid1 hda1[1]
15727488 blocks [2/1] [_U]

unused devices :

Création du RAID sur les disques d'origine

mise en mode Linux auto detect

[root@mon_système ]# fdisk /dev/hdb

The number of cylinders for this disk is set to 9729.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with :
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help) : t
Partition number (1-4) : 1
Hex code (type L to list codes) : fd
Changed system type of partition 1 to fd (Linux raid autodetect)

Command (m for help) : t
Partition number (1-4) : 2
Hex code (type L to list codes) : fd
Changed system type of partition 2 to fd (Linux raid autodetect)

Command (m for help) : t
Partition number (1-4) : 3
Hex code (type L to list codes) : fd
Changed system type of partition 3 to fd (Linux raid autodetect)

Command (m for help) : w
The partition table has been altered !

Calling ioctl() to re-read partition table.
Syncing disks.



Ajout des disques d'origine dans le RAID

Attention, lors de la synchronisation, c'est le contenu des anciens disques d'origine qui sera pris et synchronisé dans le RAID Final

[root@mon_système ]# mdadm -add /dev/md0 /dev/hdb1
mdadm : added /dev/hdb1
[root@mon_système ]# mdadm -add /dev/md1 /dev/hdb2
mdadm : added /dev/hdb2
[root@mon_système ]# mdadm -add /dev/md2 /dev/hdb3
mdadm : added /dev/hdb3
[root@mon_système ]#
[root@mon_système ]# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 hdb2[2] hda2[1]
4192896 blocks [2/1] [_U]
resync=DELAYED

md2 : active raid1 hdb3[2] hda3[1]
58227520 blocks [2/1] [_U]
resync=DELAYED

md0 : active raid1 hdb1[2] hda1[1]
15727488 blocks [2/1] [_U]
[=======>.............] recovery = 35.0% (5520832/15727488) finish=8.0min speed=21184K/sec

unused devices :
[root@mon_système ]# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 hdb2[2] hda2[1]
4192896 blocks [2/1] [_U]
resync=DELAYED

md2 : active raid1 hdb3[2] hda3[1]
58227520 blocks [2/1] [_U]
resync=DELAYED

md0 : active raid1 hdb1[2] hda1[1]
15727488 blocks [2/1] [_U]
[===================>.] recovery = 96.3% (15152128/15727488) finish=0.4min speed=22008K/sec

unused devices :
[root@mon_système ]# cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 hdb2[2] hda2[1]
4192896 blocks [2/1] [_U]
resync=DELAYED

md2 : active raid1 hdb3[2] hda3[1]
58227520 blocks [2/1] [_U]
[======>..............] recovery = 33.8% (19738240/58227520) finish=21.2min speed=30178K/sec

md0 : active raid1 hdb1[0] hda1[1]
15727488 blocks [2/2] [UU]

unused devices :
[root@mon_système ]#



Mise à jour de la conf RAID

[root@mon_système ]# mdadm -examine -scan > /etc/mdadm.conf
[root@mon_système ]# cat /etc/mdadm.conf
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=3cbafed9:14e6fc12:1bc439cd:ae0c4217
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=f49db6a7:8c9eca24:a83f1833:09b2682f
ARRAY /dev/md2 level=raid1 num-devices=2 UUID=d3420a22:6d1f724b:9e7d3dfe:f38e9eea
[root@mon_système ]#

Préparation du GRUB

[[root@mon_système ]# cd /boot/grub/
[root@mon_système grub]# vi grub.conf
[root@mon_système grub]# more /boot/grub/grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE : You do not have a /boot partition. This means that
# all kernel and initrd paths are relative to /, eg.
# root (hd0,0)
# kernel /boot/vmlinuz-version ro root=/dev/hdb1
# initrd /boot/initrd-version.img
#boot=/dev/hdb
default=1
fallback=1
timeout=5
splashimage=(hd1,0)/boot/grub/splash.xpm.gz
hiddenmenu
title RAID hd0 Scientific Linux SL (2.6.18-194.26.1.el5PAE)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5PAE ro root=/dev/md0 selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5PAE.img
title RAID hd0 Scientific Linux SL (2.6.18-194.26.1.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5 ro root=/dev/md0 selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5.img
title RAID hd0 Scientific Linux (2.6.18-194.3.1.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.3.1.el5 ro root=/dev/md0 selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.3.1.el5.img
title RAID hd1 Scientific Linux SL (2.6.18-194.26.1.el5PAE)
root (hd1,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5PAE ro root=/dev/md0 selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5PAE.img
title RAID hd1 Scientific Linux SL (2.6.18-194.26.1.el5)
root (hd1,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5 ro root=/dev/md0 selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5.img
title RAID hd1 Scientific Linux (2.6.18-194.3.1.el5)
root (hd1,0)
kernel /boot/vmlinuz-2.6.18-194.3.1.el5 ro root=/dev/md0 selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.3.1.el5.img
title Scientific Linux SL (2.6.18-194.26.1.el5PAE)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5PAE ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5PAE.img
title Scientific Linux SL (2.6.18-194.26.1.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.26.1.el5 ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.26.1.el5.img
title Scientific Linux (2.6.18-194.3.1.el5)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-194.3.1.el5 ro root=LABEL=/ selinux=0 rhgb quiet
initrd /boot/initrd-2.6.18-194.3.1.el5.img
[root@mon_système grub]#

Mise à jour du RAMDISK

[root@mon_système ]# mv /boot/initrd-'uname -r'.img /boot/initrd-'uname -r'.img_orig2
[root@mon_système ]# mv /boot/initrd-'uname -r'PAE.img /boot/initrd-'uname -r'PAE.img_orig2
[root@mon_système ]# mv /boot/initrd-2.6.18-194.3.1.el5.img /boot/initrd-2.6.18-194.3.1.el5.img_orig2
[root@mon_système ]# mkinitrd /boot/initrd-'uname -r'.img 'uname -r'
[root@mon_système ]# mkinitrd /boot/initrd-'uname -r'PAE.img 'uname -r'PAE
[root@mon_système ]# mkinitrd /boot/initrd-2.6.18-194.3.1.el5.img 2.6.18-194.3.1.el5
[root@mon_système ]# ls /boot
config-2.6.18-194.26.1.el5 initrd-2.6.18-194.26.1.el5PAE.img_orig System.map-2.6.18-194.26.1.el5
config-2.6.18-194.26.1.el5PAE initrd-2.6.18-194.26.1.el5PAE.img_orig2 System.map-2.6.18-194.26.1.el5PAE
config-2.6.18-194.3.1.el5 initrd-2.6.18-194.3.1.el5.img System.map-2.6.18-194.3.1.el5
grub initrd-2.6.18-194.3.1.el5.img_orig vmlinuz-2.6.18-194.26.1.el5
initrd-2.6.18-194.26.1.el5.img initrd-2.6.18-194.3.1.el5.img_orig2 vmlinuz-2.6.18-194.26.1.el5PAE
initrd-2.6.18-194.26.1.el5.img_orig symvers-2.6.18-194.26.1.el5.gz vmlinuz-2.6.18-194.3.1.el5
initrd-2.6.18-194.26.1.el5.img_orig2 symvers-2.6.18-194.26.1.el5PAE.gz
initrd-2.6.18-194.26.1.el5PAE.img symvers-2.6.18-194.3.1.el5.gz
[root@mon_système ]#
[root@mon_système ]# sync
[root@mon_système ]# sync
[root@mon_système ]# sync
[root@mon_système ]# reboot

Broadcast message from root (pts/1) (Thu Mar 17 19:15:46 2011) :

The system is going down for reboot NOW !
[root@mon_système ]# login as : root
root@mon_système's password :
Last login : Thu Mar 17 18:27:34 2011 from frlann0l018462.fr.alcatel-lucent.com

Nous sommes en mode RAID 1

avec la possibilité de booter en RAID ou en RAID dégradé en cas de panne
0