IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Migrer sa distribution Debian en RAID 1,
Un tutoriel de Christophe LOUVET

Le , par chrtophe

26PARTAGES

9  0 
Je vous proposes mon nouveau tutoriel sur :

La Migration de votre distribution en RAID

Dans ce tutoriel, vous apprendrez comment transformer votre distribution Debian, en cours d'exécution, en système RAID 1 afin de vous prévenir d'une panne de disque.

Bonne lecture.

Retrouvez les meilleurs cours et tutoriels pour apprendre le système Linux

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de N_BaH
Modérateur https://www.developpez.com
Le 27/08/2017 à 20:43
Bonjour,

merci, ça va m'être utile.

pour être plus "évocateur", dans les commandes, privilégier les options longues.
Code : Sélectionner tout
sfdisk --dump
Code : Sélectionner tout
sgdisk --randomize-guids
...
1  0 
Avatar de Malick
Community Manager https://www.developpez.com
Le 30/08/2017 à 12:37
Salut,

Bravo Chrtophe pour cet excellent tutoriel

1  0 
Avatar de NicCo
Membre du Club https://www.developpez.com
Le 20/09/2017 à 14:06
Apparemment il faut aussi exclure le /mnt/* dans la synchro de la partition / sinon il boucle à l'infini en créant des /mnt/mnt/mnt/...

Edit : Est-ce qu'il ne vaut pas mieux aussi exclure /mnt/*, /media/*, /tmp/*, /run/* et /lost+found ? Et il n'y a pas d'intérêt à conserver les ACLs et les attributs étendus sur le système ?

Code : Sélectionner tout
sudo rsync -aAXv /* --one-file-system /mnt --exclude={"/proc/*","/sys/*","/dev/*","/mnt/*","/media/*","/run/*","/tmp/*","/lost+found"}
1  0 
Avatar de Pascalr0410
Nouveau Candidat au Club https://www.developpez.com
Le 30/08/2017 à 15:26
Bonjour,
J'ai quelques remarques à faire :

A priori, le 5.1 est inutile, mdadm se charge de cette manip tout seul. En tout cas, je n'ai jamais eu à passer par là.

Si possible, privilégier la mise en place de RAID à l'installation, avec Debian c'est possible au moment de la sélection des partitions. Au vue de la simplicité d'installation d'un système c'est plus rapide et moins risqué que de basculer un système en cours de fonctionnement.

C'est un débat, mais personnellement, j'ai tendance à limiter au maximum le nombre de partition. En dehors des besoins spécifiques, pour mes serveurs perso, une seule partition, et un fichier swap. Pour une machine de bureau, le /home à part et encore. Ça offre plus de souplesse quant ‘à l'usage de l'espace disponible. ça limite aussi les problèmes lorsque l'on se pointe 3 ans plus tard, quand la machine a réellement plantée et que l'on est dans busybox pour se rappeler ce qui a été fait à l'époque (cas vécu).

Egalement, pour un poste bureautique, se poser la question de l'utilité du RAID de l'ensemble de la machine ou seulement du /home. Etant donné les probabilités que le système ne redémarre pas, comme tu l'a expérimenté toi même dans le tuto.

A priori la raison de l'échec du démarrage lors de ton test de panne se trouve à la quatrième ligne : sda1 absent (normal) et sdb1 marqué failed ! Vu que le système de fichier est encore en lecture seule à ce stade, cela voudrait dire qu'il était failed avant l'arrêt de la machine. Ça n'a pas posé de problème à grub, (probablement qu'il ne se pose même pas la question !) mais ça veut dire que md se retrouve avec un disque corrompu qu'il vire automatiquement, un disque absent et un spare qui est vierge. Je pense que si tu avais utilisé -force dans tes tentatives de redémarrage, sdb1 serai repassé working et ça serait repartit.

Cordialement,
Pascal.
0  0 
Avatar de chrtophe
Responsable Systèmes https://www.developpez.com
Le 30/08/2017 à 17:36
A priori, le 5.1 est inutile
Le fait de ne pas le faire n’empêchera pas le démarrage mais c'est plus propre et éventuellement pertinent si besoin de maintenance.

C'est un débat, mais personnellement, j'ai tendance à limiter au maximum le nombre de partition
Je traite les deux cas, lors de l'installation, si on ne choisi pas "une seule partition, plusieurs sont créés.

Egalement, pour un poste bureautique, se poser la question de l'utilité du RAID de l'ensemble de la machine ou seulement du /home.

Si possible, privilégier la mise en place de RAID à l'installation,
En général, on utilise plutôt le RAID sur les serveurs, et je suis d'accord avec ce point.

Il me semble avoir tenté l'option -force, mais je vais retester.
0  0 
Avatar de chrtophe
Responsable Systèmes https://www.developpez.com
Le 03/09/2017 à 9:44
Quelques mises à jour du tutoriel, notamment la partie simulation de panne.
@N_bah, j'ai aussi tenu compte de tes remarques.
0  0 
Avatar de NicCo
Membre du Club https://www.developpez.com
Le 17/09/2017 à 19:37
Bonjour,
Merci pour ce super tuto, il va m'être utile j'espère que je peux poser mes questions ici sinon j'effacerai sans problème.
Je vais le mettre en application en RAID 1 sous Ubuntu 16.04 sur un disque avec plusieurs partitions (capture en PJ) :
- sda1 correspond au système (montage /)
- sda2 correspond aux données (montage /media/donnees)
- sda3 est une partition étendue dans laquelle sda5 est la partition de swap uniquement
Avant de faire n'importe quoi, j'ai quelques questions :
- Dans le 5.1.1, est-ce qu'il faut passer les drapeaux en raid pour toutes les partitions ?
- Dans le 5.2, il faut créer un mdX pour chaque partition ? Donc /dev/md0 pour sda1, /dev/md1 pour sda2... ?
- Dans le 5.2, le boot grub se trouve sur sda1 vu que je n'ai pas de partition /boot (et vu que le drapeau boot est présent) ?
- Dans le 5.3.2, est-ce qu'il est possible de laisser mdadm (re)construire le Raid 1 au lieu de faire une copie via rsync ?
Merci pour l'aide !
0  0 
Avatar de chrtophe
Responsable Systèmes https://www.developpez.com
Le 17/09/2017 à 20:32
Bonsoir,

j'espère que je peux poser mes questions ici sinon j'effacerai sans problème.
C'est l’intérêt du post. Poser des questions, donner des avis.

Dans le 5.1.1, est-ce qu'il faut passer les drapeaux en raid pour toutes les partitions ?
Il faut mettre le drapeau RAID sur toutes les partitions passées en RAID. Le montage avec un mauvais drapeau fonctionne mais ce n'est pas propre et peut compliquer la reconstruction en cas de problème sur le RAID.
Dans le 5.2, il faut créer un mdX pour chaque partition ? Donc /dev/md0 pour sda1, /dev/md1 pour sda2... ?
Il faut créer un volume RAID pour chaque partition devant être passé en RAID. Dans ton cas sda1, sda2, et sda5. Ne pas toucher à sda3. Vu que tu as que 3 partitions, tu peux envisager, sur le disque supplémentaire, de supprimer la partition étendue et de placer le swap dans une partition primaire. Mais ça c'est juste pour les explications, ça ne changera rien.

Dans le 5.2, le boot grub se trouve sur sda1 vu que je n'ai pas de partition /boot (et vu que le drapeau boot est présent) ?
Le dossier /boot contient le noyau, l'initrd, et les fichiers GRUB. Il peut être dans le la partition root (/) ou son contenu peut être dans une partition à part (ce qui est forcément le cas en UEFI) et être vu depuis le / dans le point de montage /boot. Dans ton cas, il faut bien préciser le format de metadonnées comme expliqué lors de la création du volume RAID pour que celui-ci soit bootable avec Grub sur sda1.

Dans le 5.3.2, est-ce qu'il est possible de laisser mdadm (re)construire le Raid 1 au lieu de faire une copie via rsync ?
Quand tu créé un volume RAID, celui-ci est vierge, au même titre qu'un disque physique. Il faut donc y créer un filesystem (mkfs), et y mettre du contenu. Rsync sert à copier les données du disque source vers le volume RA1D de destination. Il aurait aussi été possible de faire une copie via la commande cp. Et si tu ne fais pas cette copie, quand tu vas intégrer l'ancien disque, tu vas écraser tes données. Donc le RAID doit être reconstruit après copie des données.

J'ajouterais que le RAID ne remplace pas une sauvegarde. C'est fait pour protéger d'une défaillance matérielle, ça ne protégera pas d'un effacement par fausse manipulation, virus, plantage du filesystem.

J'ai intégré ces points au tutoriel.
0  0 
Avatar de NicCo
Membre du Club https://www.developpez.com
Le 17/09/2017 à 22:27
Merci beaucoup pour tous ces détails, je vais m'y atteler dès que possible mais je pense que tout sera clair et sinon je repasserai par ici

Juste une dernière chose, pour être sûr que tous les fichiers soient copiés sans être modifié, il ne vaut mieux pas faire une copie offline du disque d'origine ?
0  0 
Avatar de chrtophe
Responsable Systèmes https://www.developpez.com
Le 18/09/2017 à 7:29
L'idée est de minimiser l'immobilisation, donc d'éviter une mise offline (ou disons le la minimiser). Et attention, si tu entends par offline démarrer par exemple depuis un live cd, tu vas être confronté à devoir forcer le montage du raid dégradé.

La commande rsync synchronise la source avec la destination. La première copie sera longue en cas de volume important. La commande réappliquée ne recopiera que les fichiers non présents ou modifiés depuis la précédente synchronisation. Une fois la machine redémarrée avec le ou les raids dégradé(s), les volumes d'origine restent disponibles tant qu'ils ne sont pas intégrés au(x) raid(s). Rien n’empêche d'attendre un certain temps pour être sûr qu'il ne manque rien.
0  0