NAS Raid 1 sur Raspberry
Installation d'un NAS en Raid1 sur Raspberry avec 2 disques USB
Pour installer un NAS sur Raspberry, je vous invite à prendre connaissance de la page
RAID 1 / Mirroring
Création d'un disque virtuel composé de disques physiques deux à deux ou l'un est la copie conforme de l'autre
Le Raid 1 / Mirroring est un volume logique composé d'un nombre pair de disques physiques (2 disques, 4 disques, etc ...)
Avantages
Protection maximum - Copie totale du disque physique sur l'autre disque physique
La perte d'un seul disque physique n'entraine pas la perte du disque virtuel
Les E/S sur disques se font sur l'un ou l'autre des disques
Synchronisation des disques en temps réel
Inconvénients
L'espace utilisé est la moitié de l'espace total des disques
Le nombre de disque doit etre pair
Baisse des performances E/S
La perte des 2 disques mirrorés entraine la perte du disque virtuel
Connexion des deux disques USB sur le Raspberry
Nous utiliserons deux disques USB de même capacité
Nous ne connecteront pas les deux disques USB directement sur le Raspberry
Car l'alimentation 5V du Raspberry ne tiendra pas la charge
Nous utiliserons un mini-hub USB auto-alimenté pour la connexion des deux disques USB
Le mini-hub USB sera connecté au Raspberry
Installation du NAS
Nous installons le NAS comme indiqué sur la page NAS sur Raspberry
- Mise à jour du Raspberry
- Créer des dossiers publics qui seront accessibles sur le NAS
- Installer Samba
- Modifier du fichier de configuration de Samba /etc/samba/smb.conf
- Créer le répertoire sur lequel sera monté le volume logique
- Donner les droits de lecture/écriture nécessaires au répertoire de montage
- Brancher les deux disques USB sur le mini-Hub
Installation de l'outil de gestion des volumes Raid
Pour créer un sytème Raid1, nous devons installer l'outil de gestion des Volumes Raid Logiciel: mdadm
- sudo apt-get install mdadm
Suppression des partitions existantes
Supprimer les partitions existantes (si besoin)
Attention
Cette opération detruira toutes les données présentes sur les deux disques USB
Si besoin faire une sauvegarde avant
Disque sda
Supprimer la(les) partition(s) existante(s)
- sudo fdisk /dev/sda
- choix p # Affichage des partitions existantes
- choix d # Suppression des partitions existantes
Si plusieurs partitions, choisir la 1ere partition pour la supprimer et recommencer pour les autres éventuelles partitions
- choix w # Ecriture de la modification
Disque sdb
Supprimer la(les) partition(s) existante(s)
- sudo fdisk /dev/sdb
- choix p # Affichage des partitions existantes
- choix d # Suppression des partitions existantes
Si plusieurs partitions, choisir la 1ere partition pour la supprimer et recommencer pour les autres éventuelles partitions
- choix w # Ecriture de la modification
Création de la nouvelle partition sur les deux disques USB
Création de la nouvelle partition sur les deux disques USB
Disque sda
- sudo fdisk /dev/sda
- choix n # Création de la nouvelle partition
- choix p # Partition primaire
- Partition number - choix 1 # Par defaut - Partition n° 1
- Fisrt sector (2048) - Valider par [Enter] # Par defaut 2048
- Last sector (xxxxxxx) - Valider par [Enter] # Dernier secteur du disque
Changer le type de la partition - Mettre le type fd pour le Raid
- choix t # Modifier le type de partition
- choix L (Grand L) # Pour afficher tous types possibles
- choix fd # Type Linux Raid Auto
- choix w # Ecrire la modification
Disque sdb
- sudo fdisk /dev/sdb
- choix n # Création de la nouvelle partition
- choix p # Partition primaire
- Partition number - choix 1 # Par defaut - Partition n° 1
- Fisrt sector (2048) - Valider par [Enter] # Par defaut 2048
- Last sector (xxxxxxx) - Valider par [Enter] # Dernier secteur du disque
Changer le type de la partition - Mettre le type fd pour le Raid
- choix t # Modifier le type de partition
- choix L (Grand L) # Pour afficher tous types possibles
- choix fd # Type Linux Raid Auto
- choix w # Ecrire la modification
Vérification
- sudo fdisk /dev/sda
- choix p
- sudo fdisk /dev/sdb
- choix p
Les partitions sont en Linux Raid Autodetect
Construction du Raid 1
Maintenant que les deux disques USB sont prêts
Nous pouvons créer le volume Raid 1 avec la commande mdadm
Le volume logique créé se nomme md0 pour Multiple Device 0
Une fois créé, nous ne parlons plus de sdax ou sdbx qui sont les disques physiques, mais nous parlons de md0 qui est le volume logique
- sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
- Continue creating array [y/n] - Repondre y puis [Enter]
Explication:
- --create # Création de l'array Raid 1
- --verbose # Affichage dans le terminal de toutes les étapes de création
- /dev/md0 # Nom de l'array Raid 1 - Multiple Device 0
- --level=1 # Raid 1
- --raid-devices=2 # Nombres de disques physiques dans l'array - 2 disques
- /dev/sda1 # 1er disque
- /dev/sdb1 # 2eme disque
Controle de la synchronisation du Raid 1
Vérifier la synchronisation du Raid 1, saisir la commande
- watch -n 3 cat /proc/mdstat
[Ctrl]+[c] pour quitter l'affichage
La ligne resync indique l'avancement de la synchronisation
Patience , la synchronisation est longue ...
Pour synchroniser deux disques de 320Go, il m'a fallu 4 heures car le debit en USB 2 est lent
Montage de l'array Raid 1 dans /etc/fstab
Modification du fichier /etc/fstab
- sudo nano /etc/fstab # Editer le fichier /etc/fstab avec nano
Ajouter la ligne a la fin du fichier
- /dev/md0 /home/shares/public ext4 defaults 0 1
On peut monter l'array Raid 1 sur un répertoire spécifique.
Créer le répertoire
- sudo mkdir /home/raid # Création du répertoire /home/raid
Montage dans /etc/fstab
- /dev/md0 /home/raid ext4 defaults 0 1
[Ctrl]+[o] # Pour sauvegarder les modifications de fstab
[Ctrl]+[x] # Pour quitter l'éditeur