Mdadm cheat sheet

  LVM / filesystemen / RAID / DISK

Aanmaken nieuwe RAID array

Om een nieuwe array aan ta maken gebruik je create (mdadm –create):

# mdadm --create --verbose /dev/md0 --level=1 /dev/sda1 /dev/sdb2

of the korte notatie:

# mdadm -Cv /dev/md0 -l1 -n2 /dev/sda1 /dev/sdb2

Aanmaken /etc/mdadm.conf

/etc/mdadm.conf of /etc/mdadm/mdadm.conf (op debian en afgeleide) is de main configuration file voor mdadm. Nadat je een raid array hebt aangemaakt kan je de configuratie toevoegen aan deze files:

# mdadm --detail --scan >> /etc/mdadm.conf

Verwijder 1 disk van de array

Je kan een disk pas verwijderen van een array als deze failed is. Dus is dat niet het geval dan moet hem eerst met de hand op failed zetten. in geval van een kapotte disk is dit meestal automatische gebeurt. dan kan de eerste over geslagen worden:

# mdadm --fail /dev/md0 /dev/sda1

als hij failed is kan je hem verwijderen:

# mdadm --remove /dev/md0 /dev/sda1

'”`UNIQ–google-00000001-QINU`”‘

Disk toevoegen aan een bestaande array

Om een nieuwe disk aan de array toe te voegen:

# mdadm --add /dev/md0 /dev/sdb1

Converteer een 2 way mirror naar een 3 way

Als je aan een 2-way mirror een extra disk toe voegd zal je deze als Hot spare terug zien. Om er een 3 way van te maken voer je na het toevoegen.

# mdadm --grow /dev/md0 --raid-devices=3

Converteer een 3 way mirror naar een 2 way

Om een 3 way mirror weer terug te brengen naar een 2 way mirror zet je disk die je wilt verwijderen op fail, daarna verwijder je hem met remove, in mirror detail zie uiteraard wel een failed device. daarna zet je de array weer terug naar 2 devices (verwarrend ook hier gebruik je de grow optie).

# mdadm --fail /dev/md0 /dev/sdb2
# mdadm --remove /dev/md0 /dev/sdb2
# mdadm --grow /dev/md0 --raid-devices=2

Bekijk de status van de array

Je kan op 2 manieren de status bekijken:

# mdadm --detail /dev/md0

of

# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sdb1[1] sda1[0]
104320 blocks [2/2] [UU]

Op de laatste regel zie je de status van de disken, De U geeft aan disken okay. Voor een failed drive staat een _ en bij de drive een F, en bij degraded staat er ook een _ en is de drive weg.

Stoppen en verwijderen van een RAID array

Als je een raid array helemaal wil verwijderen moet je hem eerst stoppen, pas daarna kan je verwijderen:

# mdadm --stop /dev/md0
# mdadm --remove /dev/md0

Verwijder meteen even superblock van de drives:

# mdadm --zero-superblock /dev/sda

handig commando’s

Om het beheer wat makkelijker te maken hier onder een aantal handige commando’s om de status van syncen te volgen kan bv watch gebruiken

# watch cat /proc/mdstat 

En bij het vervangen moet je uiteraard de partition tabel gelijk houden met de al bestaande. je kan hem met de hand goed zetten maar dit kan ook automatiche met sfdisk:

# sfdisk -d /dev/sda | sfdisk /dev/sdb

let op dat je zeker bent van je zaak want dit commando verwijderd de partition tabel van de nieuwe disk. zonder waarschuwing.

Om de disk direct te gebruiken zonder reboot. gebruik je partprobe

# partprobe /dev/sdb