Blog de benji1000

Désactiver le SoftRaid sur un serveur Kimsufi en 2025

Le 26 août 2025 dans Sysadmin

L'objectif de la manipulation est de pouvoir disposer d'un espace de 4 To de stockage sur un serveur Kimsufi d'OVH (ECO OVHcloud aujourd'hui), en exploitant complètement les deux disques de 2 To plutôt que d'utiliser le RAID. Comme je l'avais dit en 2020, on perd un mécanisme de protection des données au bénéfice d'un plus grand espace disque disponible.

Installation du serveur

Sur l'interface d'administration d'OVH, lancer l'installation en choisissant un système d'exploitation (je recommande une version LTS ou Long-Term Support d'Ubuntu Server), et cocher la case "Personnaliser la configuration des partitions" sur le premier écran.

Sur le deuxième écran, choisir d'installer le système sur un seul disque :

Il n'est pas nécessaire de modifier les autres paramètres. Laisser s'installation se terminer, puis se connecter en SSH au serveur. La commande fdisk -l devrait révéler 5 partitions sur le premier disque sda dont voici l'utilité :

Partition Description
/dev/sda1 Partition de démarrage GRUB
/dev/sda2 Noyau Linux, initramfs et fichiers de démarrage
/dev/sda3 Système d'exploitation, applications et données
/dev/sda4 Swap entre le système et la RAM
/dev/sda5 Métadonnées OpenStack/cloud-init (config-drive)

Je préfère effectuer les opérations suivantes sous l'identité du compte root afin de ne pas avoir à saisir sudo à chaque fois. Exécuter la commande sudo su afin de passer sur le compte root le temps des opérations.

Préparer le deuxième disque

# Supprimer la partition existante sur sdb
parted /dev/sdb rm 1

# Créer une nouvelle partition qui utilise tout l'espace
parted /dev/sdb mklabel gpt
parted /dev/sdb mkpart primary 0% 100%

Installer et configurer LVM

# Installer LVM
apt update && apt install lvm2

# Créer un volume physique sur le nouveau disque
pvcreate /dev/sdb1

# Créer un groupe de volumes
# Le nom vg-mydata peut être modifié
vgcreate vg-mydata /dev/sdb1

# Créer un volume logique
# Le nom lv-mydata peut être modifié
lvcreate -l 100%FREE -n lv-mydata vg-mydata

# Formater ce volume
mkfs.ext4 /dev/vg-mydata/lv-mydata

Migrer le système vers LVM

# Monter le nouveau volume
mkdir /mnt/new-root
mount /dev/vg-mydata/lv-mydata /mnt/new-root

# Copier tout le système (cela prendra quelques minutes)
rsync -avxHAX / /mnt/new-root/

# Ajouter l'ancien disque au groupe LVM
pvcreate /dev/sda3
vgextend vg-mydata /dev/sda3

Reconfigurer le bootloader

Je préfère effectuer les étapes d'éditions avec un éditeur de texte (nano dans mon cas) plutôt qu'en modifiant les fichiers en ligne de commande, car une erreur peut empêcher de démarrer le système par la suite ! Avec Kimsufi, il est toujours possible de redémarrer en mode rescue pour aller réparer le système, mais c'est toujours une étape dont on se passe très bien ☺️

# Monter les systèmes nécessaires pour chroot
mount --bind /dev /mnt/new-root/dev
mount --bind /proc /mnt/new-root/proc
mount --bind /sys /mnt/new-root/sys
mount /dev/sda2 /mnt/new-root/boot

# Entrer dans le nouveau système
chroot /mnt/new-root

# Mettre à jour fstab
# La première ligne doit être : /dev/mapper/vg--mydata-lv--mydata / ext4 errors=remount-ro 0 1
nano /etc/fstab

# Mettre à jour le fichier grub par défaut
# Chercher et modifier la ligne : GRUB_CMDLINE_LINUX="nomodeset iommu=pt console=tty0 root=/dev/mapper/vg--mydata-lv--mydata"
nano /etc/default/grub

# Réinstaller GRUB
update-initramfs -u -k all
update-grub
grub-install /dev/sda

# Sortir du chroot
exit

Redémarrer et étendre

# Redémarrer sur le nouveau système LVM
reboot

# APRÈS le redémarrage, l'ancienne partition sda3 ne sera plus montée
# On peut alors l'ajouter au groupe LVM
pvcreate /dev/sda3
vgextend vg-mydata /dev/sda3

# Étendre le volume logique pour utiliser tout l'espace disponible
lvextend -l +100%FREE /dev/vg-mydata/lv-mydata
resize2fs /dev/vg-mydata/lv-mydata

Résultat final

Le système aura un espace unifié /dev/vg-mydata/lv-mydata de ~3.6T monté sur /, combinant les deux disques de manière transparente !

Pour effectuer le transfert depuis un ancien serveur, j'utilise la commande suivante dans un screen :

rsync -avhPW --stats --partial --inplace --numeric-ids --times -e 'ssh -p PORT -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null' USER_ANCIEN_SYSTEME@IP_ANCIEN_SYSTEME:/dossier/a/transferer/ /dossier/sur/nouveau/serveur/