Contributeurs, les sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
Ce wiki prends la suite du wiki Raid logiciel crypté + LVM à l'installation de wheezy.
Je me suis basée sur la même machine virtuelle que celle qui a servie aux illustrations de ce dernier. J'ai changé les ports SATA des disques montés en raid /dev/sda et /dev/sdb (en port SATA0 et SATA1 avant modification), j'ai récupéré le disque virtuel sda (sur lequel une debian est fonctionnelle) d'une autre machine virtuelle sans raid. J'ai affecté le port SATA0 à ce disque ; le port SATA1 au premier disque du raid et le port SATA2 au deuxième disque du raid. Puis j'ai démarré le système.
Avec le disque d'une autre machine virtuelle, sans ce changement de numéro de port SATA, (lorsque ce disque ajouté à le port SATA2 ou plus), le système démarre sur le raid.
J'ai opté pour cette façon de booter en dehors du raid, parce que mon matériel n'est pas assez puissant pour que la machine virtuelle fonctionne correctement depuis le live cd/dvd bootable (système live très très lent).
J'ai testé aussi cette méthode de suppression du raid logiciel sur deux vieux disques physiques sur lesquels était installé un RAID1 + LVM avant installation.
Là encore pour la suppression, j'ai ajouté un troisième disque dur, sur lequel j'ai installé un système, et j'ai supprimé depuis ce dernier système redémarré.
Cette fois, parce que depuis le live CD d'ubuntu (option “essayer ubuntu”), le raid n'était pas détecté par mdadm qui a eu beaucoup de mal à s'y installer.
Rappelez-vous après avoir sélectionné “configurer le raid logiciel” le message “Ces modifications sont irréversibles” était apparu :
Il est à noter que deux étapes sont inter-dépendantes :
A) stopper et supprimer le raid avec mdadm ;
B) détruire les anciennes partitions, en créer une nouvelle (au moins une) et formater la (ou les) nouvelle(s) partition(s).
Sans l'état B si l'on essaie de réinstaller tout le système en bootant sur une image iso, la détection du matériel aboutit à ceci :
Voyons comment récupérer ces deux disques montés en raid avec ces deux étapes dans le détail.
Pour supprimer le RAID, il faut démonter les partitions qui le constituent.
Voyons le retour de sfdisk -s : après suppression du raid les lignes /dev/md0 et /dev/md1 auront disparu.
sfdisk -s
/dev/sda: 10485760 /dev/sdb: 10485760 /dev/md0: 682432 /dev/md1: 9792384 /dev/mapper/systeme-root: 1949696 /dev/mapper/systeme-swap: 974848 /dev/mapper/systeme-usr: 1949696 /dev/mapper/systeme-var: 1462272 /dev/mapper/systeme-tmp: 974848 /dev/mapper/systeme-home: 2478080 total : 41235776 blocs
Si le système “tourne” sur le raid (/dev/sda et /dev/sdb montés) on ne peut pas stopper, puis supprimer le raid :
mdadm -S /dev/md0
mdadm: Cannot get exclusive access to /dev/md0: Perhaps a running process, mounted filesystem or active volume groupe?
Plusieurs solutions sont possibles :
Repérer vos partitions raid avec fdisk -l, les disques en raid sont /dev/sdb et /dev/sdc parce qu'il s'agit de la machine virtuelle sur laquelle j'ai ajouté un disque avec le système en /dev/sda, afin de pouvoir donner ici les retours des commandes en exemple
fdisk -l /dev/sdb
Disk /dev/sdb: 10.7 GB, 10737418240 bytes 255 têtes, 63 secteurs/piste, 1305 cylindres,\ total 20971520 secteurs Unités = secteurs de 1 * 512 = 512 octets Taille de secteur (logique / physique) :\ 512 octets / 512 octets taille d'E/S (minimale / optimale) :\ 512 octets / 512 octets Identifiant de disque : 0x000a6acc Périphérique Amorçage Début Fin Blocs Id. Système /dev/sdb1 * 2048 1368063 683008 fd\ RAID Linux autodétecté /dev/sdb2 1368064 20969471 9800704 fd\ RAID Linux autodétecté
PUIS
fdisk -l /dev/sdc
Disk /dev/sdc: 10.7 GB, 10737418240 bytes 255 têtes, 63 secteurs/piste, 1305 cylindres,\ total 20971520 secteurs Unités = secteurs de 1 * 512 = 512 octets Taille de secteur (logique / physique) :\ 512 octets / 512 octets taille d'E/S (minimale / optimale) :\ 512 octets / 512 octets Identifiant de disque : 0x00071fa4 Périphérique Amorçage Début Fin Blocs Id. Système /dev/sdc1 * 2048 1368063 683008 fd\ RAID Linux autodétecté /dev/sdc2 1368064 20969471 9800704 fd\ RAID Linux autodétecté
sfdisk -s
/dev/sda: 8388608 /dev/sdb: 10485760 /dev/sdc: 10485760 /dev/md0: 682432 /dev/md1: 9792384 /dev/mapper/systeme-swap: 974848 /dev/mapper/systeme-root: 1949696 /dev/mapper/systeme-usr: 1949696 /dev/mapper/systeme-var: 1462272 /dev/mapper/systeme-tmp: 974848 /dev/mapper/systeme-home: 2478080 total : 49624384 blocs
mdadm -S /dev/md0
mdadm: stopped /dev/md0
#PUIS
mdadm -S /dev/md1
mdadm: stopped /dev/md1
mdadm --zero-superblock /dev/sdb1
mdadm --zero-superblock /dev/sdb2
mdadm --zero-superblock /dev/sdc1
mdadm --zero-superblock /dev/sdc2
⇒ le retour du prompt indique que tout s'est bien passé.
Mais les commandes fdisk -l /dev/sdb
puis fdisk -l /dev/sdc
, renvoient encore :
Disk /dev/sdb: 10.7 GB, 10737418240 bytes 255 têtes, 63 secteurs/piste, 1305 cylindres,\ total 20971520 secteurs [...] Périphérique Amorçage Début Fin Blocs Id. Système /dev/sdb1 * 2048 1368063 683008 fd RAID Linux autodétecté /dev/sdb2 1368064 20969471 9800704 fd RAID Linux autodétecté root@hypathie-VirtualBox:/home/hypathie# fdisk -l /dev/sdc [...] Périphérique Amorçage Début Fin Blocs Id. Système /dev/sdc1 * 2048 1368063 683008 fd RAID Linux autodétecté /dev/sdc2 1368064 20969471 9800704 fd RAID Linux autodétecté
Après avoir stoppé le raid et lancé les commandes de suppression du raid (mdadm –zero-superblock /dev/sdxx), il est maintenant possible de supprimer ces partitions et d'en créer une nouvelle en ext4 par exemple avec gparted, ce qui n'était pas possible avant.
Cela m'est arrivé (trois fois sur quatre essais sur MV, jamais sur les disques physiques (trois essais).
Bien que le système soit démarré sur /dev/sda
et que les commandes umount /dev/sdb1 ; umount /dev/sdb2 ; umount /dev/sdc1 ; umount /dev/sdc2 indiquent des partitions non montées,
on peut avoir :
mdadm -S /dev/md0
mdadm: stopped /dev/md0
mdadm --zero-superblock /dev/sdb1
retour du prompt
Mais
mdadm -S /dev/md1
mdadm: Cannot get exclusive access to /dev/md1\ :Perhaps a running process, mounted filesystem\ or active volume group?
mdadm --zero-superblock /dev/sdb2
mdadm: Couldn't open /dev/sdb2 for write - not zeroing
Et après cela:
sfdisk -s
/dev/sda: 8388608 /dev/sdb: 10485760 /dev/sdc: 10485760 /dev/md1: 9792384 /dev/mapper/systeme-swap: 974848 /dev/mapper/systeme-root: 1949696 /dev/mapper/systeme-usr: 1949696 /dev/mapper/systeme-var: 1462272 /dev/mapper/systeme-tmp: 974848 /dev/mapper/systeme-home: 2478080 total : 48941952 blocs
Je n'en ai pas d'explication
Mais il a été à chaque fois possible de poursuivre la suppression du raid avec gparted ou dd + mkfs, et de récupérer les disques pour d'autres installations,
en faisant d'abord par prudence :
mdadm --manage /dev/md1 --fail /dev/sdb2
mdadm: set /dev/sdb2 faulty in /dev/md1 root@debian-pour-supp-raid:/home/hypathie
mdadm --manage /dev/md1 --remove /dev/sdb2
mdadm: hot removed /dev/sdb2 from /dev/md1
dd if=/dev/zero of=/dev/sdb
dd: écriture vers « /dev/sdb »: Aucun espace disponible sur le périphérique 20971521+0 enregistrements lus 20971520+0 enregistrements écrits 10737418240 octets (11 GB) copiés, 844,774 s, 12,7 MB/s
C'est assez long : soyez patient.
fdisk /dev/sdb
Le périphérique ne contient pas une table de partitions DOS ou Sun, SGI, OSF valable Création d'une nouvelle étiquette DOS avec id de disque 0x6c6d8b8e. Les modifications restent en mémoire jusqu'à ce que vous les écriviez. Après quoi, bien sûr, le contenu précédent sera irrécupérable. Avertissement : indicateur 0x0000 incorrect dans la table de partitions 4, sera corrigé par w (écriture) Commande (m pour l'aide): n Type de partition : p primaire (0 primaire(s), 0 étendue(s), 4 libre(s)) e étendue Sélection (p par défaut) : p Numéro de partition (1-4, par défaut 1): 1 Premier secteur (2048-20971519, par défaut 2048): Utilisation de la valeur par défaut 2048 Dernier secteur, +secteurs or +taille{K,M,G} (2048-20971519, par défaut 20971519): Utilisation de la valeur par défaut 20971519 Commande (m pour l'aide): t Partition sélectionnée 1 Code Hexa (taper L pour lister les codes): 83 Commande (m pour l'aide): w La table de partitions a été altérée. Appel de ioctl() pour relire la table de partitions. Synchronisation des disques.
mkfs.ext4 /dev/sdb
mke2fs 1.42.5 (29-Jul-2012) /dev/sdb est le périphérique en intégralité, pas seulement une partition ! Procéder malgré tout ? (o,n)
Avec o
#retour du prompt
Il est possible maintenant de récupérer ses disques pour y installer à nouveau un OS. En tout cas de façon certaine pour une VM
Après avoir utilisé les commandes de mdadm pour stopper et supprimer /dev/md0 et/ou /dev/md1 (voir la note important plus haut paragraphe A n°2)
il est possible de supprimer ses partitions, re-partitionner, et formater ses disques avec gparted pour une autre installation.
apt-get install gparted
Et voilà, vous pouvez maintenant réutiliser les disques pour y installer un système !