Supprimer un RAID logiciel pour récupérer ses disques

Supposons une machine avec les disques /dev/sda et /dev/sdb montés en raid.

Voyons comment récupérer ces deux disques montés en raid avec ces deux étapes dans le détail.

Deux étapes :

stopper et supprimer le raid avec mdadmdétruire les anciennes partitions, en créer une nouvelle (au moins une) et formater la (ou les) nouvelle(s) partition(s).gparted ne peut détruire les partitions montées en raid (on a un triangle et non un point d'exclamation à côté des partitions à supprimer : voir sur l'image paragraphe B)le formatage avec fdisk aboutit à un message d'erreur même après la commande dd pour détruire les partitions des disques en raidet le partitionnement raid n'a pas disparu tant que l'on utilise pas gparted ou dd ; fdisk et mkfs pour détruire les anciennes partitions, en recréer une (ou plusieurs) et la (les) formater !Pour supprimer le RAID, il faut démonter les partitions qui le constituent.

Pré-requis

Première étape

Repérez vos partitions raid :

...@...:~$ sblk /dev/md*
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
md0 9:0 0 232,8G 0 raid1
├─md0p1 259:0 0 99G 0 part /media/home
└─md0p2 259:1 0 133,8G 0 part /media/data
md0p1 259:0 0 99G 0 part /media/home
md0p2 259:1 0 133,8G 0 part /media/data

Il n'y a qu'un volume RAID, /dev/md0 avec deux partitions /dev/md0p1 et /dev/md0p2. Voyons le détail :

...@...:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 1 232,9G 0 disk
└─sda1 8:1 1 232,9G 0 part
└─md0 9:0 0 232,8G 0 raid1
├─md0p1 259:0 0 99G 0 part /media/home
└─md0p2 259:1 0 133,8G 0 part /media/data
sdb 8:16 1 233,3G 0 disk
└─sdb1 8:17 1 232,9G 0 part
└─md0 9:0 0 232,8G 0 raid1
├─md0p1 259:0 0 99G 0 part /media/home
└─md0p2 259:1 0 133,8G 0 part /media/data
mmcblk0 179:0 0 59,6G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /boot
└─mmcblk0p2 179:2 0 59,4G 0 part /

Le volume RAID /dev/md0 comporte deux disques /dev/sda et /dev/sdbAprès suppression du raid, /dev/md0 aura disparu.

Si le système “tourne” sur le raid (/dev/sda et /dev/sdb montés) on ne peut pas stopper, puis supprimer le raid (message d'erreur) Dans ce cas, démarrez sur un live CD ou une clé Ubuntu et choisissez essayer Ubuntu

Autres étapes

Si le volume RAID est partitionné, supprimez les partitions

Repérez vos partitions RAID :

...@...:~$ lsblk /dev/md*
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
md0 9:0 0 232,8G 0 raid1
├─md0p1 259:0 0 99G 0 part /media/home
└─md0p2 259:1 0 133,8G 0 part /media/data
md0p1 259:0 0 99G 0 part /media/home
md0p2 259:1 0 133,8G 0 part /media/data

Le volume RAID est /dev/md0 avec deux partitions :/dev/md0p1, montée en /media/data/dev/md0p2, montée en /media/nas.Démontez ces partitions :

...@...:~$ sudo umount /media/home
...@...:~$ sudo umount /media/data

Retirez ou commentez les lignes de montage de ces partitions dans /etc/fstab :

<...>
# Matrice /dev/md0 RAID-1
#	Partition home
#UUID=aeb60630-ea0d-4ab4-9c3e-39f61befd172 /media/home ext4 defaults,noatime,nofail 0 0
#LABEL=home /media/home ext4 defaults,noatime,nofail 0 0
#	Partition data
#UUID=2b4fc944-e7d7-4b48-81c8-48113e2905ce /media/data ext4 defaults,noatime,nofail 0 0
#LABEL=data /media/data ext4 defaults,noatime,nofail 0 0
# Montages spéciaux
#/media/data/srv	/srv	none	bind	0	0
#/srv/www	/var/www	none	bind	0	0

Repérez à nouveau vos partitions RAID :

...@...:~$ lsblk /dev/md*
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
md0 9:0 0 232,8G 0 raid1
├─md0p1 259:0 0 99G 0 part
└─md0p2 259:1 0 133,8G 0 part
md0p1 259:0 0 99G 0 part
md0p2 259:1 0 133,8G 0 part

Les deux partitions ne sont plus montées.Pour supprimer les deux partitions, partitionnez le volume RAID :

...@...:~$ sudo fdisk /dev/md0
...
Command (m for help): p
Disk /dev/md0: 232,8 GiB, 249911312384 bytes, 488108032 sectors
...
Device Boot Start End Sectors Size Id Type
/dev/md0p1 2048 207620095 207618048 99G fd Linux raid autodetect
/dev/md0p2 207620096 488108031 280487936 133,8G fd Linux raid autodetect
Command (m for help): d
...
Partition 2 has been deleted.
Command (m for help): d
Selected partition 1
Partition 1 has been deleted.
Command (m for help): p
Disk /dev/md0: 232,8 GiB, 249911312384 bytes, 488108032 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x535856bf
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

Résultat :

...@...:~$ lsblk /dev/md*
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
md0 9:0 0 232,8G 0 raid1

Les partitions ont disparu.

Ensuite

Éditez avec les droits d'administration le fichier /etc/mdadm/mdadm.conf pour effacer à la fin les lignes ARRAY /dev/md/0... du volume RAID /dev/md0 que nous allons supprimerRepérez vos partitions raid :

...@...:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 1 232,9G 0 disk
└─sda1 8:1 1 232,9G 0 part
└─md0 9:0 0 232,8G 0 raid1
sdb 8:16 1 233,3G 0 disk
└─sdb1 8:17 1 232,9G 0 part
└─md0 9:0 0 232,8G 0 raid1
mmcblk0 179:0 0 59,6G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /boot
└─mmcblk0p2 179:2 0 59,4G 0 part /

arrêtez md0 et supprimez le raid1 sur chacune des partitions :

pi@framboise4:~ $ sudo mdadm --stop /dev/md0
mdadm: stopped /dev/md0
...@...:~$ sudo mdadm --zero-superblock /dev/sd[a-b]1
...@...:~$

Le retour du prompt indique que tout s'est bien passé.

Résultat :

...@...:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 1 232,9G 0 disk
└─sda1 8:1 1 232,9G 0 part
sdb 8:16 1 233,3G 0 disk
└─sdb1 8:17 1 232,9G 0 part
mmcblk0 179:0 0 59,6G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /boot
└─mmcblk0p2 179:2 0 59,4G 0 part /

/dev/md0 a disparu.Il est maintenant possible de supprimer ces partitions, re-partitionner, et formater ses disques avec cfdisk, ce qui n'était pas possible avant.

Conclusion

Problèmes connus

Voir aussi

(fr) https://debian-facile.org/doc:install:supprimer-un-raid-logiciel

Basé sur << Supprimer un RAID logiciel pour récupérer ces disques >> par Hypathie.