01 — découverte
Identifier les disques
P1.1
Lister les disques et partitions disponibles
▶
# vue arborescente claire (recommandée)
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot/efi
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 17G 0 part
# avec filesystem et UUID
lsblk -f
# détails complets (taille, type de table)
sudo fdisk -l
# espace utilisé sur les filesystems montés
df -h
# UUID et type de chaque partition
sudo blkid
# voir les périphériques SCSI/SATA
lsscsi
astuce
lsblk -f est la commande de départ : elle montre d'un coup la structure, les FS, et les UUID nécessaires pour /etc/fstab.
P1.2
Vérifier l'espace disque et détecter un nouveau disque
▶
# espace utilisé / disponible par partition
df -h
# taille d'un répertoire spécifique
du -sh /var
# après avoir ajouté un disque dans VirtualBox → forcer la détection
sudo partprobe
# ou rescanner le bus SCSI
echo "- - -" | sudo tee /sys/class/scsi_host/host0/scan
# le nouveau disque apparaîtra comme /dev/sdb (ou nvme0n2 selon le type)
lsblk
02 — partitionnement
Partitionner un disque
P2.1
MBR vs GPT — quel schéma choisir ?
▶
MBR (ancien)
4 partitions primaires max · limite 2 To · compatible BIOS legacy · fdisk
GPT (moderne)
128 partitions · >2 To · UEFI requis · intégrité CRC32 · gdisk / parted
Pour un nouveau disque de données sur une VM moderne → GPT avec gdisk ou parted.
P2.2
Partitionner avec fdisk (MBR/GPT interactif)
▶
# ouvrir fdisk sur le nouveau disque
sudo fdisk /dev/sdb
# dans fdisk — commandes clés :
m → aide
p → afficher la table de partitions
n → nouvelle partition
t → changer le type (8e = LVM, 83 = Linux)
d → supprimer une partition
w → écrire et quitter
q → quitter sans sauvegarder
# après fdisk — informer le kernel
sudo partprobe /dev/sdb
attentionRien n'est écrit sur le disque tant que vous n'appuyez pas sur
w. Vérifier avec p avant de valider.
P2.3
Partitionner avec parted (scriptable, GPT natif)
▶
# mode interactif
sudo parted /dev/sdb
(parted) mklabel gpt
(parted) mkpart primary ext4 1MiB 100%
(parted) print
(parted) quit
# ou en une ligne (scriptable)
sudo parted /dev/sdb --script mklabel gpt \
mkpart primary ext4 1MiB 100%
03 — filesystem
Créer un système de fichiers
P3.1
mkfs — formater une partition
▶
# ext4 — le standard Linux
sudo mkfs.ext4 /dev/sdb1
# xfs — performant pour les gros fichiers
sudo mkfs.xfs /dev/sdb1
# vfat (FAT32) — pour ESP ou compatibilité Windows
sudo mkfs.vfat -F32 /dev/sdb1
# avec label (nom) pour identifier plus facilement
sudo mkfs.ext4 -L "DATA" /dev/sdb1
# vérifier le résultat
sudo blkid /dev/sdb1
ext4
Standard Linux · journalisé · stable · bon pour /home, /var, données générales
xfs
Performant sur gros fichiers · non réductible · bon pour serveurs de logs, médias
04 — montage
Monter et persister les partitions
P4.1
Montage temporaire avec mount / umount
▶
# créer le point de montage
sudo mkdir -p /mnt/data
# monter la partition
sudo mount /dev/sdb1 /mnt/data
# vérifier
df -h /mnt/data
# démonter
sudo umount /mnt/data
# si "device busy" — trouver ce qui utilise la partition
lsof /mnt/data
fuser -m /mnt/data
temporaireUn montage avec
mount est perdu au redémarrage. Pour le rendre permanent, l'ajouter dans /etc/fstab.
P4.2
Montage permanent via /etc/fstab
▶
Format d'une ligne /etc/fstab :
# UUID POINT_DE_MONTAGE TYPE OPTIONS DUMP PASS
UUID=abc123 /mnt/data ext4 defaults 0 2
# récupérer l'UUID
sudo blkid /dev/sdb1
# ajouter dans fstab (utiliser UUID, pas /dev/sdb1 qui peut changer)
echo "UUID=$(blkid -s UUID -o value /dev/sdb1) /mnt/data ext4 defaults 0 2" \
| sudo tee -a /etc/fstab
# tester sans redémarrer
sudo mount -a
# vérifier
df -h
critiqueUne erreur dans
/etc/fstab peut empêcher le système de démarrer. Toujours tester avec mount -a avant de redémarrer.Options communes
defaults— rw, suid, dev, exec, auto, nouser, asyncnoatime— ne pas mettre à jour l'heure d'accès (performances)ro/rw— lecture seule / lecture-écriturenoexec— interdire l'exécution de binaires (sécurité /tmp)- Champ PASS : 0=pas de vérification, 1=root, 2=autres partitions
05 — LVM
Logical Volume Manager
P5.1
C'est quoi LVM ? Pourquoi l'utiliser ?
▶
analogieLVM, c'est comme un pool de stockage flexible. Plutôt que d'allouer des partitions fixes à l'avance, LVM permet d'agrandir ou réduire des volumes logiques à chaud, d'ajouter des disques transparemment, et de faire des snapshots.
Logical Volumes (LV) — /dev/vg0/lv-var /dev/vg0/lv-home
▲
Volume Group (VG) — vg0 (pool de stockage virtuel)
▲
Physical Volumes (PV) — /dev/sdb1 /dev/sdc1
▲
Disques physiques — /dev/sdb /dev/sdc
- PV (Physical Volume) — une partition ou disque entier déclaré dans LVM
- VG (Volume Group) — un pool qui regroupe un ou plusieurs PV
- LV (Logical Volume) — une "partition virtuelle" taillée dans le VG, formatée et montée
P5.2
Commandes LVM essentielles
▶
── Physical Volumes ──
sudo pvcreate /dev/sdb1 # initialiser un PV
sudo pvs # lister les PV
sudo pvdisplay # détails complets
── Volume Groups ──
sudo vgcreate vg0 /dev/sdb1 # créer un VG
sudo vgextend vg0 /dev/sdc1 # ajouter un PV au VG
sudo vgs # lister les VG
sudo vgdisplay vg0
── Logical Volumes ──
sudo lvcreate -L 10G -n lv-var vg0 # créer LV de 10G
sudo lvcreate -l 100%FREE -n lv-data vg0 # tout l'espace libre
sudo lvs # lister les LV
sudo lvdisplay
── Supprimer ──
sudo lvremove /dev/vg0/lv-var
sudo vgremove vg0
sudo pvremove /dev/sdb1
P5.3
Scénario complet : étendre /var avec un nouveau disque
▶
contexteLa VM Ubuntu a /var qui manque d'espace. On ajoute /dev/sdb, on l'intègre dans le VG existant, et on étend le LV de /var.
1
Vérifier l'état actuel et identifier le VG/LV de /var
df -h /var && sudo vgs && sudo lvs
2
Partitionner le nouveau disque
sudo fdisk /dev/sdb
# n → nouvelle partition, t → type 8e (LVM), w → écrire
sudo partprobe /dev/sdb
3
Initialiser le PV
sudo pvcreate /dev/sdb1
4
Étendre le Volume Group existant
sudo vgextend ubuntu-vg /dev/sdb1
sudo vgs # vérifier l'espace libre VFree
5
Étendre le Logical Volume de /var
sudo lvextend -L +10G /dev/ubuntu-vg/ubuntu-lv
# ou utiliser tout l'espace libre
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
6
Étendre le filesystem (en ligne, sans démonter)
# pour ext4
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
# pour xfs
sudo xfs_growfs /var
7
Vérifier
df -h /var
P5.4
Snapshot LVM — sauvegarder avant de casser
▶
# créer un snapshot (point de restauration)
sudo lvcreate -L 2G -s -n snap-var /dev/vg0/lv-var
# lister les snapshots
sudo lvs
# restaurer depuis le snapshot
sudo lvconvert --merge /dev/vg0/snap-var
# supprimer le snapshot quand inutile
sudo lvremove /dev/vg0/snap-var
bonne pratiqueCréer un snapshot avant une opération risquée (mise à jour, modification de config) comme vous feriez un snapshot VirtualBox. Il prend peu d'espace tant que peu de données changent.