Cours Ubuntu 26.04 / Examiner les disques et LVM avant de planifier une extension

Avant d’agrandir le stockage Ubuntu, identifiez la couche qui dispose de capacité libre : disque virtuel, partition, groupe LVM ou système de fichiers. Augmenter la taille du disque dans l’hyperviseur n’agrandit pas automatiquement le système de fichiers racine ; établissez d’abord le chemin réel des données et la sauvegarde de récupération.

Relier les périphériques au système de fichiers monté

Logical Volume Manager, ou LVM, sépare le stockage en volumes physiques, groupes et volumes logiques. Un Physical Volume, PV, est un périphérique préparé pour LVM ; un Volume Group, VG, rassemble cette capacité ; un Logical Volume, LV, fournit un périphérique logique utilisable, par exemple par un système de fichiers.

Le disque, sa partition, son système de fichiers et son montage sont des objets distincts. Une installation LVM peut présenter cette chaîne simplifiée :

Disque virtuel
  → partition utilisée comme PV
    → groupe VG
      → volume logique LV
        → système de fichiers ext4 monté sur /

Ce schéma est un exemple conceptuel, pas la sortie de votre machine. Le chiffrement, le RAID, les volumes fins ou d’autres systèmes de fichiers peuvent ajouter des couches ou modifier les conditions de croissance.

lsblk -o NAME,SIZE,TYPE,FSTYPE,MOUNTPOINTS
findmnt /
df -hT /
df -i /
sudo pvs
sudo vgs -o vg_name,vg_size,vg_free
sudo lvs -o lv_path,lv_size,vg_name,segtype

lsblk montre les périphériques et leurs relations ; findmnt identifie la source de la racine ; df mesure l’espace du système de fichiers monté. df -i relève aussi les inodes : leur épuisement peut empêcher la création de fichiers alors que des blocs restent libres.

pvs décrit les PV et leur groupe, vgs la capacité des groupes, lvs les volumes logiques et leur type de segment. Rapprochez la source de / et le chemin du LV plutôt que de sélectionner le premier volume de la liste. Les chemins /dev/mapper et /dev/nom-du-vg peuvent désigner le même périphérique ; confirmez leur correspondance dans l’arborescence.

Une installation sans LVM n’a pas nécessairement de PV, VG ou LV à afficher. Si une commande est absente ou retourne une erreur, distinguez outil manquant, droits, périphérique inaccessible et absence de LVM. Ne créez pas de PV pour obtenir une sortie ressemblant à un tutoriel.

Trouver où la capacité disponible est réellement bloquée

Observation Interprétation et décision
VFree est disponible dans le VG Un LV existant peut éventuellement recevoir des extents, puis son système de fichiers doit être agrandi selon son type.
Le disque est plus grand, mais pas sa partition ou son PV La capacité reste dans une couche inférieure ; identifiez les limites avant de prévoir partition et PV.
Un nouveau disque a été ajouté Il demande une identification et une conception propres ; son ajout ne l’intègre pas automatiquement au VG.
Le LV est plus grand, mais df n’a pas augmenté Le système de fichiers peut encore attendre son extension ; ne réaugmentez pas le LV sans diagnostic.
Le système de fichiers paraît plein Examinez aussi inodes, fichiers volumineux, journaux et éventuels fichiers supprimés encore ouverts.

La gestion des volumes logiques dans Ubuntu explique l’allocation dans un groupe. La capacité libre du système de fichiers est différente de VFree : la première sert aux fichiers dans le LV, la seconde peut servir à agrandir ou créer des LV.

Un volume fin, thin, et son pool nécessitent aussi de surveiller la capacité physique et les métadonnées du pool. Ne leur appliquez pas le simple raisonnement d’un volume linéaire traditionnel. Relevez le type de segment avant de choisir le parcours.

Comparer le choix de l’installateur avec la capacité actuelle

L’installation guidée peut laisser de la place dans le VG au lieu d’attribuer tout le disque au LV racine. Une capacité df plus petite que celle du disque n’est donc pas forcément une anomalie. Le guide du stockage de Subiquity décrit les volumes logiques et l’intérêt d’une réserve pour d’autres volumes ou des snapshots.

Exemple de raisonnement, sans représenter un test réalisé : si un VG dispose de 4 Gio libres et que le besoin est de 1 Gio pour un LV linéaire, l’extension peut être étudiée sans modifier la table des partitions. Si VFree est nul, répéter lvextend ne crée pas de capacité. Les tailles affichées peuvent être arrondies ; consultez une précision suffisante avant une allocation proche de la limite.

Une réserve de groupe peut être utile aux autres volumes et à l’exploitation. N’affectez pas systématiquement 100 % de l’espace libre à la racine simplement parce qu’une commande le permet. Comparez la croissance attendue des données et le besoin des autres services.

Vérifier la cible et les conditions avant toute extension

Préparez une sauvegarde indépendante du disque à modifier, vérifiez que vous pouvez en relire les fichiers et que les applications disposent d’une restauration cohérente. Une copie des seules métadonnées LVM ne sauvegarde pas le contenu des fichiers. Un snapshot dépendant du même stockage ne protège pas d’une perte de ce stockage.

Le petit exemple d’extension ci-dessous s’applique uniquement à une VM dédiée où toutes ces conditions ont été confirmées :

  • La racine / utilise bien le LV /dev/ubuntu-vg/ubuntu-lv, et aucun autre volume n’a été choisi par ressemblance de nom.
  • Le LV est un volume linéaire traditionnel directement utilisable par un système de fichiers ext4 pris en charge ; il ne s’agit ni d’un thin pool, ni d’un snapshot à agrandir, ni d’un montage avec une couche non traitée ici.
  • Le VG correspondant dispose d’au moins 1 Gio réellement allouable et le stockage ne présente pas d’erreur connue.
  • La sauvegarde, l’accès console, les droits d’administration et la fenêtre d’intervention sont prêts.

Si le chemin ou le système de fichiers diffère, arrêtez-vous avant de copier la commande. Pour un empilement chiffré ou un RAID, établissez les étapes de chaque couche et sa procédure de récupération. N’utilisez pas un outil ext4 sur XFS, Btrfs ou une signature de chiffrement.

Notez les tailles initiales du LV et du système de fichiers, la capacité libre du VG, le point de montage et le besoin d’augmentation. Une extension n’est pas une transaction annulable par une réduction symétrique : ne prévoyez pas lvreduce comme simple retour arrière.

Agrandir une fois le LV prévu et vérifier les deux couches

Après les contrôles précédents, cette commande ajoute une quantité limitée et demande aussi l’extension du système de fichiers pris en charge :

sudo lvextend --size +1G --resizefs /dev/ubuntu-vg/ubuntu-lv

Dans le manuel lvextend, +1G signifie ajouter 1 Gio à la taille actuelle, tandis que 1G sans signe désigne une taille absolue. L’allocation suit les unités physiques du groupe ; gardez une marge et relisez le résultat plutôt que de supposer une capacité finale d’après le seul texte de commande.

--resizefs fait intervenir l’outil propre au système de fichiers et peut nécessiter des actions de vérification ou de montage selon le contexte. Il ne garantit pas que toutes les couches ont été modifiées avec succès. N’ajoutez pas --force ou une option supprimant les contrôles pour contourner un refus.

Relisez le code de retour et les messages avant d’effectuer les contrôles suivants :

sudo lvs -o lv_path,lv_size,vg_name,segtype
sudo vgs -o vg_name,vg_size,vg_free
df -hT /
findmnt /

Le LV visé doit avoir grandi, VFree doit avoir diminué de l’allocation correspondante et la capacité ext4 doit refléter l’extension. Les valeurs du système de fichiers et du périphérique ne sont pas forcément identiques, notamment à cause des métadonnées et de la présentation des unités.

Le manuel resize2fs décrit l’agrandissement ext4, y compris en ligne lorsque le noyau et le système de fichiers le permettent. Il n’agrandit pas la partition sous-jacente à votre place.

Si seul le LV a grandi, examinez l’échec de l’étape du système de fichiers et l’état réel avant une correction ciblée. Relancer la commande avec +1G ajouterait encore de l’espace au LV au lieu de simplement reprendre l’extension manquée. Ne répétez donc pas le bloc comme s’il était sans effet lorsqu’il a partiellement réussi.

Séparer les autres plans d’extension et valider les données

Si la capacité libre se trouve au niveau du disque ou d’un nouveau périphérique, documentez séparément l’identification, la partition éventuelle, le PV puis le groupe et le système de fichiers. pvcreate prépare un périphérique pour LVM et peut détruire des informations existantes ; ce n’est pas une commande de consultation à essayer sur un disque contenant des données.

Après une extension réussie, vérifiez la lecture d’un fichier connu, puis une petite écriture dans un emplacement d’essai autorisé qui n’écrase rien. Confirmez les services qui utilisent ce volume et leurs journaux. Lors du redémarrage planifié, vérifiez à nouveau les montages et les capacités par la console préparée.

En cas d’erreur, suspendez les modifications supplémentaires, conservez les messages et le relevé des couches, puis choisissez la procédure de réparation ou de restauration appropriée. Un volume agrandi et des données récupérables sont deux résultats distincts ; la vérification de la sauvegarde reste nécessaire même après le succès de la commande.