Visualiser une révision

[Tuto/HowTo] [Debian/Ubuntu] Créer un JBOD (raid0 non strip) avec mdadm

voxdemonix : révision n°2 (27 avril 2019 16:47:33)

Installez les pré-requis.
-----------


1. **Installation.**

```
sudo apt-get install mdadm
```


1. **Redémarrez la machine.**

```
sudo reboot
```



Préparer les disques
--------------------

- Vous pouvez préparer les disques sur une autre machine via une GUI.
- Si vous passez par une GUI (interface graphique), vous devez juste [formater les disques et créer une partition de taille voulue](Si vous passez par une GUI, vous devez juste formater les disques et créer une partition de taille voulue dans un format compatible avec votre système. une fois fait vous pouvez directement passer à la partie “Créer le raid”https://doc.ubuntu-fr.org/gnome-disk-utility) dans un format compatible avec votre système. une fois fait vous pouvez directement passer à la partie “Créer le raid”


Créer un JBOD (raid0 non strip).
--------------------------------


1. **Lancez la création du raid0.**

```
sudo mdadm --create --verbose /dev/md/raid0 --level=0 --raid-devices=2 /dev/sdb1 /dev/sdc1
```

- **_/dev/md/raid0_** le disque virtuel que l'on va créer
- **_–level=0_** on choisit raid0
- **_–raid-devices=2_** le nombre de disque
- **_/dev/sdb1 /dev/sdc1_** le path vers les partitions à utiliser pour le raid


1. **Formatez le raid0.**

```
sudo mkfs.ext4 /dev/md/raid0 -m 1
```

- **_/dev/raid0_** le path vers le disque virtuel créé précédemment
- **_-m 1_** ? le numero de partition ?


1. **Créer le point de montage.**

```
mkdir /media/raid
```

- **_/media/raid_** le path où vous souhaitez monter votre disque virtuel


1. **Appliquer les bons propriétaires au point de montage.**

```
chown $USER:root /media/raid
```

- **_/media/raid_** le path où vous souhaitez monter votre disque virtuel



1. **Appliquer les bonnes permissions.**

```
chmod 770 /media/raid
```

- **_/media/raid_** le path où vous souhaitez monter votre disque virtuel



1. **Ajouter au fichier _/etc/fstab_.**

```
/dev/raid0   /media/raid   ext4      defaults,nofail,noauto     0   0
```


- _**/dev/raid0**_ le path de votre disque virtuel
- _**/media/raid**_ le path où vous souhaitez monter votre disque virtuel
- _**defaults,nofail,noauto**_ les options de montage. Vous pouvez retirer noauto si votre raid n'est pas sur des disques externes.


Montage du JBOD mdadm sur Raspberry pi et autre nanopc.
-------------------------------------------------------

Les disques durs externes ont tendance à prendre trop de temps pour démarrer sur raspberry pi. Pour compenser nous allons faire notre propre script de montage.


1. **Créez le dossier pour notre script.**

```
sudo mkdir /opt/scripts
```

1. **Créez le script (_CTRL+X_ pour sauver&quitter).**

```
sudo nano /opt/scripts/mountMyRaid.sh
```

1. **Collez le script suivant en l'adaptant a votre config.**

```
#!/bin/bash
# WTFPL - code by voxdemonix
#   infos at https://wiki.0rion.netlib.re/doku.php?id=tutoriel_fr:tuto_howto_debian_ubuntu_jbod_raid0_avec_mdadm
#on verifie qu'on est bien en root
if [ ! "$SUDO_USER" ]; then
exit 0
fi
sleep 10 # petit délais d'attente afin que les disques soient prêt

mdadm --build /dev/md0 --level=0 --raid-devices=2 /dev/sda1 /dev/sdb1

mount -t ext4 /dev/md0 /media/raidLocal
```


1. **Ajouter son exécution au boot (_CTRL+X_ pour sauver&quitter).**

```
sudo nano /etc/rc.local
```

1. **Ajoutez la ligne suivante avant _exit 0_.**

```
sudo /opt/scripts//mountMyRaid.sh
```

1. **Rendez le script exécutable.**

```
sudo chmod +x /opt/scripts/mountMyRaid.sh
```

1. **Accordez le bon propriétaire au script.**

```
sudo chown root:root /opt/scripts/mountMyRaid.sh
```

1. **Testez le script.**

```
sudo /opt/scripts/mountMyRaid.sh
```

1. **S'il fonctionne redémarrez la machine :)**



Foire Aux Questions
-----------

#### Que se passe-t-il si un disque n'est pas présent au boot ?

⇒ La partition ne fonctionne pas.


#### Combien d'espace mémoire aurais-je?

⇒ EspaceDisque1 + EspaceDisque2 + EspacesDisque3 + etc, etc, etc

#### Les fichiers sont-ils découpés (strip) ou répartis (non strip)?

Non strip (non découpé) mais en cas de perte d'un disque tout les fichiers sont quand même perdu.