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)

Prima di procedere

Le operazioni descritte possono avere impatti sul sistema e sui dati, fino a causare malfunzionamenti o perdita di dati:
  • esegui sempre un backup dei dati o dell'intero server all'esterno prima di qualsiasi intervento;
  • se disponibile, crea uno snapshot del server dal pannello di gestione prima di operare sul sistema;
  • nei servizi unmanaged, la gestione del sistema operativo e dei software è sotto la tua responsabilità;
  • in caso di dubbi, consulta un sistemista di fiducia o verifica la documentazione ufficiale aggiornata del sistema operativo o dei software in uso.

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)

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)

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?