Gestione volumi LVM con Linux
LVM è l’acronimo di Logical Volume Manager, uno degli strumenti per la gestione dei volumi su macchine linux. Basato sul framework device mapper integrato nel kernel linux, consente una gestione dei dischi più flessibile rispetto agli strumenti di partizionamento tradizionali. LVM raggruppa i dischi fisici in pool sui quali è possibile creare le unità logiche. In questo scenario per estendere un’unità logica è sufficiente aggiungere dischi al pool e riconfigurare lo spazio allocato.
LVM comprende una serie di oggetti dove alla base sono presenti i dischi fisici fono ad arrivare ai volumi logici che contengono i dati:
- Phisycal volumes (PV), si trovano al livello più basso della struttura LVM. Si tratta dei dischi fisici veri e propri dove è necessario creare le partizioni contrassegnate con l’etichetta “8e” (Linux LVM) che andranno a fare parte del VolumeGroup.
- Volume Group (VG), un raggruppamento logico dei PV.
- Logical Volumes (LV), il punto più alto della struttura dove viene creato il filesystem (per ogni logical volume è possibile creare un solo filesystem).
La partizione di boot non può essere creata su un volume logico.
Tra i principali vantaggi offerti da linux LVM sono la possibilità di espandere volumi a caldo, creare volumi con ridondanza (Raid software), possibilità di creare snapshot.
Visualizzazione informazioni volumi LVM
In questa demo è stata configurata una macchina virtuale con Ubuntu 16.04 con disco virtuale da 20 GB. In fase di setup si è scelta la configurazione guidata con supporto LVM.
Di default viene creato il Volume Group ubuntu16-vg con due volumi logici, root e swap_1.
Tutti i comandi vengono eseguiti effettuando l’accesso direttamente come utente root. Se si effettua l’eccesso con un altro utente è necessario eseguire i comandi con i privilegi di sudo.
Per visualizzare informazioni sui volumi fisici è possibile utilizzare i comandi:
# lvmdiskscan
# pvscan
# pvs
# pvdisplay (lo switch –m visualizza informazioni sugli extents collegati a ciascun volume).
Per visualizzare le informazioni relative ai volume groups:
# vgscan
# vgdisplay
# vgs
Per visualizzare le informazioni relative ai Logical Volumes:
# lvs
# lvdisplay (aggiungere il parametro –m per visualizzare informazioni sulla distribuzione del logical volume tra i volumi fisici).
Espansione LVM.
Aggiungere un disco virtualeda 10 Gb alla VM di test e riavviare la macchina.
# lvmdiskscan
Per aggiungere il nuovo volume fisico al volume group:
# vgextend ubuntu16-vg /dev/sdb
Per verificare che l’operazione sia stata eseguita correttamente rieseguire vgdisplay:
Per estendere di 5 Gb il volume logico /root:
# lvresize -L +5G –resizefs ubuntu16-vg/root (è possibile utilizzare anche lvextend)
Se si desidera espandere il volume logico ed il filesyste in 2 step separati:
# lvresize -L +5G ubuntu16-vg/root
# resize2fs /dev/ubuntu16-vg/root
Per verificare lo spazio disponibile:
# df –h
Per aggiungere tutto lo spazio ancora a disposizione:
# lvresize -l +100%FREE ubuntu16-vg/root
Riferimenti: