Le macchine virtuali sono alcuni degli strumenti più importanti nel kit di strumenti di un professionista IT. È possibile testare software sconosciuto, capire come funziona il sistema e persino giocherellare con il kernel di tanto in tanto. L’unico problema è lo storage. Diverse versioni di pacchetti e pacchetti orfani continuano ad accumularsi, i file di log diventano sempre più grandi con il tempo e presto avrete bisogno di più spazio di archiviazione.

In questo tutorial vedremo come far crescere la dimensione del disco virtuale della vostra macchina virtuale in modo pulito ed efficiente.

Useremo VirtualBox versione 5.2.6, se la vostra è più vecchia allora potreste volerla aggiornare. Ci sono alcuni dettagli importanti cambiati nell’interfaccia utente in questa versione e potreste avere difficoltà a seguirli se la vostra versione è un po’ più vecchia.

Il Logical Volume Manager, o LVM, rende la questione un po’ più intricata ma va bene, ci occuperemo anche di questo caso in questo tutorial.

Ospite Linux senza usare LVM

La prima cosa da fare quando si ridimensiona un disco è ottenere il nome corretto del disco che si dovrà modificare. Dalla dashboard di VirtualBox vai alla VM che vuoi ingrandire. Assicurati che la macchina sia in stato Powered Off.

  1. Seleziona la macchina dall’angolo sinistro sotto il suo menu di archiviazione e ottieni il nome del disco virtuale su cui è installato il sistema operativo. Nel nostro caso il disco si chiama vdi (Normal 20.00GB).
  2. Ora cliccate sul pulsante Global Tools nell’angolo in alto a destra della dashboard.
  3. Si possono vedere molti dischi virtuali elencati nella sezione. Quello che ci interessa è Ubuntu.vdi come abbiamo imparato nel Passo-1. Seleziona il nome del disco appropriato che la tua VM utilizza e regola la sua dimensione al valore che desideri. Noi aumenteremo la sua dimensione da 20GB a 40GB. Clicca su apply prima di tornare a Machine Tools.
  4. Ora possiamo avviare la VM e dare un’occhiata al sistema operativo guest. Avvia la VM, effettua il login, apri il terminale e inserisci:
    $df -h

    Lo spazio disponibile per il filesystem root non mostra alcun aumento di spazio di archiviazione. Per capire perché si può eseguire il seguente comando per elencare tutti i dispositivi a blocchi di archiviazione collegati alla VM:

    $lsblk

    C’è un dispositivo a blocchi sda, di 40G di dimensione che è del tipo È stato partizionato in sda1, di dimensione 20G (sopra il quale si trova il filesystem root) e il resto è non allocato. La partizione /(root) è quella che dovrebbe crescere nel nostro caso. C’è anche la partizione di swap sda2. Per ridimensionare la partizione root è più sicuro per noi spegnere la macchina virtuale.

  5. Per far crescere il filesystem root, useremo l’utility gparted. Scarica il file .iso dal link. Poi abbiamo bisogno di gparted per modificare il nostro disco virtuale vdi.
  6. Torna alla dashboard di VirtualBox, fai clic destro sulla VM, seleziona Impostazioni e seleziona Storage dalla colonna di sinistra della finestra Impostazioni.Sotto il controller IDE, puoi vedere che non c’è nessun disco ottico collegato. Puoi cliccare dove c’è scritto Empty, cliccare sull’icona del CD all’estrema destra (sotto la sezione Attributes), selezionare il file iso di gparted e montarlo sotto Controller: IDE.
  7. Nella sezione Settings della tua VM vai su System e controlla che il Optical Disk sia sopra l’Hard Disk nell’ordine di boot. Questo assicura che la gparted.iso si avvii al posto del sistema operativo de facto.
  8. Avvia di nuovo la VM, ed entrerai nella GUI di gparted dopo aver selezionato la tua lingua preferita e il keymapping. Cliccate sull’applicazione gparted presentata sul desktop.Questo è il punto in cui molte cose sarebbero diverse per persone diverse. Nel caso precedente, abbiamo solo una partizione principale per /(root) montata su sda1. Potreste avere un diverso filesystem da far crescere e dovreste aumentare la dimensione della partizione corrispondente. Il caso di cui sopra funziona per l’installazione predefinita di Ubuntu 16.04 LTS.
  9. La partizione di swap è tra la partizione principale e lo spazio non allocato e deve essere eliminata. Se ci sono altri filesystem come /home montati in mezzo, non cancellateli! Potreste finire per perdere dati importanti. Considera di creare una nuova partizione per lo spazio non allocato, se questo è il caso. Ecco come appare quando abbiamo ridimensionato la nostra partizione root.
  10. La partizione di swap viene eliminata cancellando sda5 e poi sda2 e poi cliccando sul pulsante apply. Ora siete liberi di ridimensionare la partizione di root fino alla fine, ma lasciate qualche gigabyte alla fine per la partizione di swap. Cliccate su Apply una volta che siete soddisfatti del modo in cui è stato fatto il partizionamento.Questo è tutto! Ora, al riavvio del sistema noterai che il filesystem della VM ha più spazio a disposizione per lavorare.

Gli ospiti Linux che usano LVM

Se il sistema operativo guest usa LVM allora dobbiamo modificare un paio di passi. Prima di tutto, quando siete nell’interfaccia utente di gparted, noterete che c’è un’icona di blocco accanto alle partizioni LVM. Cliccate con il tasto destro del mouse su quelle partizioni e selezionate l’opzione di disattivazione per permettere il loro ridimensionamento.

Riavviate il sistema e aprite il terminale una volta che avete fatto crescere le partizioni desiderate.

La prossima cosa da fare è rendere lo schema di partizionamento lvm consapevole delle modifiche fatte. Come utente root, eseguite il comando qui sotto per vedere la lista dei volumi fisici disponibili:

$pvs

Potete vedere che ci sono 20G di spazio reso nuovamente disponibile al volume fisico /dev/sda5 per far crescere il volume fisico eseguito:

$pvresize /dev/sda5

Diamo ora un’occhiata ai dispositivi a blocchi.

$lsblk

L’esecuzione di lsblk mostra che la partizione root occupa ancora solo 17.5G mentre ci sono 39.5G sulla partizione sda5. Questo è dovuto al fatto che la nostra partizione fisica è cresciuta ma il gestore del volume logico non ne è consapevole.

Si noti anche il nome del volume che è montato sulla directory /(root). Nell’output di cui sopra è nominato come ubuntu--lvm--vg-swap_1

Per utilizzare tutto lo spazio libero disponibile, esegui il comando qui sotto, potresti voler cliccare su tab dopo /dev/ubuntu… per arrivare al nodo del dispositivo appropriato:

$lvextend -l+100%FREE /dev/ubuntuServer-vg/root

Fate queste due modifiche se siete utenti LVM e se state installando un nuovo sistema operativo guest, cercate di evitare LVM se potete.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.