IL EST DANGEREUX DE JOUER AVEC MDADM LORSQU'ON NE CONNAIT PAS BIEN SON FONCTIONNEMENT. VOUS RISQUEZ DE PERDRE LES DONNEES. FAITES UN BACKUP AVANT DE COMMENCER LA LECTURE DE GUIDE.
Note:
Déterminer les partitionsSi votre serveur vient de subir un changement de disque, celui ci vous est rendue avec un disque dans le RAID soft et un disque vierge qui ne contient aucune table de partition.
Il faut donc copier la partition du disque intact vers ce nouveau disque.
Comment voir quel disque n'as pas de partition?
Code : Tout sélectionner
fdisk -l
Code : Tout sélectionner
Le disque /dev/sdb ne contient pas une table de partition valide
Disque en MBR
dans le cas du changement du SDA:
Code : Tout sélectionner
sfdisk -d /dev/sdb | sfdisk /dev/sda
Code : Tout sélectionner
sfdisk -d /dev/sda | sfdisk /dev/sdb
Il peut arrivé que vous ayez l'erreur suivante : sfdisk: ERROR: sector 0 does not have an msdos signature. Dans ce cas il vous faut ajouter à la commande précédente --force se qui donnera :
dans le cas du changement du SDA:
Code : Tout sélectionner
sfdisk -d /dev/sdb | sfdisk --force /dev/sda
Code : Tout sélectionner
sfdisk -d /dev/sda | sfdisk --force /dev/sdb
Vous devez alors utiliser sgdisk à la place de sfdisk :
dans le cas du changement du SDA:
Code : Tout sélectionner
sgdisk -R=/dev/sda /dev/sdb
Code : Tout sélectionner
sgdisk -R=/dev/sdb /dev/sda
1.) Aide
Pour avoir une aide complete, utilisez --help
Code : Tout sélectionner
# mdadm --misc --help
Usage: mdadm misc_option devices...
This usage is for performing some task on one or more devices, which
may be arrays or components, depending on the task.
The --misc option is not needed (though it is allowed) and is assumed
if the first argument in a misc option.
Options that are valid with the miscellaneous mode are:
--query -Q : Display general information about how a
device relates to the md driver
--detail -D : Display details of an array
--examine -E : Examine superblock on an array component
--examine-bitmap -X: Display contents of a bitmap file
--zero-superblock : erase the MD superblock from a device.
--run -R : start a partially built array
--stop -S : deactivate array, releasing all resources
--readonly -o : mark array as readonly
--readwrite -w : mark array as readwrite
--test -t : exit status 0 if ok, 1 if degrade, 2 if dead, 4 if missing
Pour avoir les informations sur l'état du RAID utilisez la commande --misc
Code : Tout sélectionner
mdadm --misc --detail /dev/md1
/dev/md1:
Version : 00.90.00
Creation Time : Tue Nov 7 22:01:16 2006
Raid Level : raid1
Array Size : 3068288 (2.93 GiB 3.14 GB)
Device Size : 3068288 (2.93 GiB 3.14 GB)
Raid Devices : 2
Total Devices : 1
Preferred Minor : 1
Persistence : Superblock is persistent
Update Time : Wed Nov 8 15:42:35 2006
State : active, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 0
Spare Devices : 0
UUID : 4a9a446d:af55e24b:b311aa61:8dc74ed4
Events : 0.12
Number Major Minor RaidDevice? State
0 8 1 0 active sync /dev/sda1
1 0 0 1 removed
3.) ADD d'un disque en mode dégradé
Voici un exemple des commandes, pour rajouter un disque dans un raid en mode degradé:
Suivre l'avancement:mdadm /dev/md1 --manage --add /dev/sdb1
mdadm: hot added /dev/sdb1
Code : Tout sélectionner
cat /proc/mdstat
Personalities : linear raid0 raid1 raid5
read_ahead 1024 sectors
md1 : active raid1 sdb12 sda10
3068288 blocks 2/1 U_
=>................... recovery = 5.4% (167028/3068288) finish=0.8min speed=55676K/sec
md2 : active raid1 sda20
240597376 blocks 2/1 U_
Lorsque c'est terminé:
Code : Tout sélectionner
mdadm --misc --detail /dev/md1
/dev/md1:
Version : 00.90.00
Creation Time : Tue Nov 7 22:01:16 2006
Raid Level : raid1
Array Size : 3068288 (2.93 GiB 3.14 GB)
Device Size : 3068288 (2.93 GiB 3.14 GB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 1
Persistence : Superblock is persistent
Update Time : Wed Nov 8 16:01:02 2006
State : active
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
UUID : 4a9a446d:af55e24b:b311aa61:8dc74ed4
Events : 0.14
Number Major Minor RaidDevice? State
0 8 1 0 active sync /dev/sda1
1 8 17 1 active sync /dev/sdb1
Code : Tout sélectionner
mdadm /dev/md2 --manage --add /dev/sdb2
mdadm: hot added /dev/sdb2
Code : Tout sélectionner
cat /proc/mdstat
Personalities : linear raid0 raid1 raid5
read_ahead 1024 sectors
md1 : active raid1 sdb11 sda10
3068288 blocks 2/2 UU
md2 : active raid1 sdb22 sda20
240597376 blocks 2/1 U_
>.................... recovery = 0.2% (655104/240597376) finish=73.2min speed=54592K/sec
unused devices:
Vérifiez a la fin la taille de votre swap.
Code : Tout sélectionner
cat /proc/swaps
Filename Type Size Used Priority
/dev/sdb3 partition 522104 43984 -1
Il faut maintenant réajouter le swap du disque que vous venez de formater et reajouter au RAID.
Code : Tout sélectionner
mkswap /dev/sda3
swapon -a