Visualiser une révision

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

voxdemonix : révision n°3 (27 avril 2019 16:49:00)

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, vous devez juste [formater les disques et créer une partition de taille voulue](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.