Gestire i dischi del Cloud Server > Come estendere il volume del disco con lo spazio aggiunto (Linux)

1.5.2 Come estendere il volume del disco con lo spazio aggiunto (Linux)

Informazioni preliminari e avvertenze

Le istruzioni seguenti sono valide per le principali distribuzioni Linux:
  • metodo A: Ubuntu 20.04/22.04, Debian 11/12, AlmaLinux/Rocky 8/9;
  • metodo B: CentOS 7.
I comandi possono variare in base a:
  • il tipo di partizionamento (LVM consigliato nei template aziendali);
  • il file system utilizzato (es. ext4 o xfs);
  • il nome del volume logico (es. /dev/mapper/ubuntu--vg-ubuntu--lv o /dev/mapper/cl-root).
Attenzioni importanti:
  • controlla sempre i nomi corretti dei device (es. /dev/sda2 vs /dev/nvme0n1p2);
  • non cancellare o ricreare partizioni sbagliate: verifica con lsblk, fdisk -l, pvdisplay, lvdisplay prima di scrivere;
  • se la root è criptata/LUKS o hai layout particolari, segui la documentazione specifica del vendor.

Metodo A - LVM (senza riavvio)

Prima di procedere:
  • fai un backup completo esterno al Cloud Server;
  • dopo aver aggiunto lo spazio disco, fai subito uno snapshot del Cloud Server prima di agire sul sistema operativo;
  • verificare la documentazione ufficiale del sistema operativo, per la procedura corretta da applicare a seconda della versione.

Accedi al tuo Cloud Server via SSH con utente root, e segui i passaggi:
  1. Per vedere lo spazio disponibile su disco e la struttura delle partizioni montate, utilizza il comando:

    df -h

  2. per modificare la tabella delle partizioni, lancia il comando:

    cfdisk

    • 2.1. all'interno di cfdisk, per estendere la partizione che precede lo spazio libero (di solito l'ultima), selezionala e digita:

      resize

      oppure, se disponibile:

      maximize

    • 2.2. per confermare l'estensione della partizione, digita due volte il comando:

      write

  3. per vedere il nome e lo stato del physical volume (PV_NAME) digita:

    pvdisplay

  4. per notificare che il physical volume ha più spazio disponibile digita:

    pvresize PV_NAME

  5. Per identificare il percorso del volume logico (LV) da estendere, esegui:

    lvdisplay

    annota LV_PATH + dimensione partizione root
  6. estendere il volume logico root (LV) e contemporaneamente il filesystem associato, digita:

    lvextend -l +100%FREE -r LV_PATH

    LV_PATH di root preso dal comando lvdisplay del punto 5, senza le virgolette o altre variazioni
  7. premi invio e se l'operazione va a buon fine, verrà mostrato il messaggio:

    lv root successfully resized.

Metodo B - CentOS 7 (parted + fdisk, richiede riavvio)

Prima di procedere:
  • fai un backup completo esterno al Cloud Server;
  • dopo aver aggiunto lo spazio disco, fai subito uno snapshot del Cloud Server prima di agire sul sistema operativo;
  • verifica la documentazione ufficiale del sistema operativo, per la procedura corretta da applicare a seconda della versione.

Accedi al tuo Cloud Server via SSH con utente root, e segui i passaggi:
  1. per visualizzare lo stato delle partizioni montate e lo spazio disponibile su disco, utilizza il comando:

    df -h

  2. per verificare la presenza di spazio libero non allocato sul disco, entra nel tool parted digitando:

    parted

    • 2.1. per visualizzare la lista delle partizioni e lo spazio libero, digita:

      print free

    • 2.2. per uscire da parted, digita:

      q

  3. per modificare la tabella delle partizioni, utilizza il comando fdisk:

    fdisk /dev/sda

    • 3.1. per visualizzare la tabella delle partizioni digita:

      p

    • 3.2. per cancellare la partizione LVM esistente digita:

      d

      quando richiesto, accetta il numero proposto (es. 2 o 3);
    • 3.3. per creare la nuova partizione, digita:

      n

      accetta i valori predefiniti per:
      • settore iniziale (es. 1026048)
      • settore finale (es. 41943039)
    • 3.4. per controllare la tabella delle partizioni aggiornata digita:

      p

    • 3.5. per impostare il tipo della nuova partizione come Linux LVM digita:

      t

      poi digita:

      2

      quindi:

      8e

    • 3.6. per scrivere le modifiche e uscire da fdisk digita:

      w

  4. riavvia il server per rendere effettive le modifiche con il comando:

    reboot

  5. dopo il riavvio, riconnettiti via SSH con l'utente root;
  6. per aggiornare il volume fisico e includere lo spazio appena aggiunto, digita:

    pvresize /dev/sda2

    sostituisci con sda3 o sdaN in base alla configurazione;
    annota il valore LV_PATH (/dev/vg/lv_root);
  7. per ridimensionare il volume logico in base alla nuova partizione, utilizza:

    lvresize /dev/vg/lv_root /dev/sda2

    sostituisci i valori secondo la configurazione del tuo sistema;
  8. per verificare nuovamente la presenza di spazio libero non allocato sul disco, entra nel tool parted digitando:

    parted

    • 8.1. per visualizzare la lista delle partizioni e lo spazio libero, digita:

      print free

    • 8.2. per uscire da parted, digita:

      q

  9. per verificare nuovamente lo stato delle partizioni montate e lo spazio disponibile su disco, utilizza il comando:

    df -h

  10. per estendere il volume logico root e il filesystem, digita:

    lvextend -l +100%FREE -r /dev/vg/lv_root

    usa il valore LV_PATH corretto (vedi punto 7);
  11. per confermare che l'operazione è andata a buon fine, digita:

    df -h

    se tutto è corretto, vedrai la nuova percentuale di spazio libero disponibile sulla partizione root.


 
Quanto è stata utile questa guida?