4.19.2 Utilizzo

Il file di configurazione relativo ai dischi gestiti in LVM è /etc/lvmtab, che può essere modificato con appositi comandi, decritti di seguito.

Per poter utilizzare LVM, i dischi devono essere inizializzati per la creazione dei Physical Volume (PV), con il comando pvcreate (man page pvcreate(8)).45

____________________________________________________________________

Comando: pvcreate
Path: /sbin/pvcreate

SINTASSI  
# pvcreate [option] device [device ...]  
DESCRIZIONE

_____________________________________________________________________________________________________________

L’exit status di pvcreate assume il significato riportato nella tab. 4.25.


Valore-|Significato----------------------------------------------|
|--0-|tutto ok------------------------------------------------|
|  1 |nessun Physical Volume specificato sulla riga di comando           |
|  2 |errore durante la rimozione della riga di lvmtab relativa al physical volume
|  3 |errore durante l’impostazione della struttura del physical volume    |
|  45 |eirdroenrteifi dcuaratonrtee d laelsc tirpitotu dria p daertllizai sontreuterturartao del physical volume    |
|  6 |nome del Physical Volume errato                             |
|  7 |errore durante il reperimento della dimensione del physical volume |
| 9956 |ivle drsriivonere/mdeold purlootonocnollopredsien I/tOe nneoln ke vranlidela                       |
| 97 |errore di locking relativo al volume manager                  |
| 98 |file di configurazione non corretto                            |
--99--comando non corretto-------------------------------------

Tabella 4.25: Significato dell’exit status di pvcreate.

LVM funziona solo su partizioni di tipo 8EH.

Ad esempio

 
# pvcreate /dev/hdb  
crea un descrittore di Volume Group nel secondo disco ATA, mentre

 
# pvcreate /dev/hda2  
crea un descrittore di Volume Group nella seconda partizione del primo disco ATA.

Quindi è necessario creare un Volume Group (VG) con il comando vgcreate (man page vgcreate(8)).

____________________________________________________________________

Comando: vgcreate
Path: /sbin/vgcreate

SINTASSI  
# vgcreate [option] VGname PV [PV ...]  
DESCRIZIONE

__________________________

... exit code vgcreate ...

Ad esempio

 
# vgcreate my_volume_group /dev/hda1 /dev/hdb1  
crea un VG col nome my_volume_group relativo ai Physical Volume creati precedentemente nell partizioni /dev/hda1 e /dev/hdb1.

Un Volume Group può essere eliminato con il comando vgremove (man page vgremove(8)).

__________________________________________________________________________________________________________

Comando: vgremove
Path: /sbin/vgremove

SINTASSI  
# vgremove [option] VGname [VGname ...]  
DESCRIZIONE

______________________________________

... exit status vgremove ...

Le informazioni relative alla gestione di un VG da parte del LVM possono essere visualizzate con il comando vgdisplay (man page vgdisplay(8)).

... man page vgdisplay ...

... Esempio ...

È possibile aggiungere ad un VG uno o più Physical Volume, precedentemente inizializzati con pvcreate, con il comando vgextend (man page vgextend(8)).

... man page vgextend (/sbin/vgextend) ...

Ad esempio

 
# vgextend my_volume_group /dev/hdc1  
aggiunge il PV /dev/hdc1 al VG my_volume_group.

Un Physical Volume può essere rimosso dal VG con il comando vgreduce (man page vgreduce(8)).

... man page vgreduce (/sbin/vgreduce) ...

Ad esempio

 
# vgreduce my_volume_group /dev/hda1  
rimuove il PV /dev/hda1 dal VG my_volume_group.

Le informazioni relative alla gestione di un PV da parte del LVM possono essere visualizzate con il comando pvdisplay (man page pvdisplay(8)).

... man page pvdisplay (/sbin/pvdisplay) ...

Ad esempio

 
# pvdisplay /dev/hda1  
visualizza le infomazioni relative al Physical Volume /dev/hda1, che potrebbero essere qualcosa di analogo a quanto riportato di seguito

--- Physical volume ---
PV Name               /dev/hda1
VG Name               myvg
PV Size               1.95 GB / NOT usable 4 MB [LVM: 122 KB]
PV#                   1
PV Status             available
Allocatable           yes (but full)
Cur LV                1
PE Size (KByte)       4096
Total PE              499
Free PE               0
Allocated PE          499
PV UUID               Sd44tK-9IRw-SrMC-MOkn-76iP-iftz-OVSen7
Si può creare quindi un Logical Volume con il comando lvcreate (man page lvcreate(8)).

... man page lvcreate (/sbin/lvcreate) ...

Ad esempio

 
# lvcreate -L1500 -ntestlv testvg  
crea un LV con nome “testlv” della dimensione di 1500 MiB utilizzando il linear mapping, a cui è assoviato il dispositivo rappresentato dal file /dev/testvg/testlv.

Un Logical Volume può essere eliminato (soltanto se è stato precedentemente “smontato” - v. sez. 4.9) con il comando lvremove (man page lvremove(8)).

... man page lvremove ...

Ad esempio

 
# lvremove /dev/myvg/homevol  
elimina, dietro conferma, il LV relativo al dispositivo /dev/myvg/homevol.

La dimensione di un LV può essere variata con il comando lvextend (man page lvextend(8)).

... man page lvextend (/sbin/lvextend) ...

Ad esempio

 
# lvextend -L12G /dev/myvg/homevol  
ridimensiona lo spazio del LV associato al dispositivo /dev/myvg/homevol fino al raggiungimento di un totale di 12 GiB, mentre

 
# lvextend -L+1G /dev/myvg/homevol  
estende la dimensione del LV associato al dispositivo /dev/myvg/homevol di 1 GiB.

Una volta esteso il Logical Volume è necessario ampliare anche la dimensione del filesystem. Questa operazione dipende dal tipo di filesystem utilizzato. Ad esempio per il filesystem ext2 (o ext3) esiste il comando e2fsadm (man page e2fsadm(8)).

... man page e2fsadm (/sbin/e2fsadm) ...

Ad esempio

 
# e2fsadm -L+1G /dev/myvg/homevol  
è analogo alla sequenza di comandi

 
# lvextend -L+1G /dev/myvg/homevol
# resize2fs /dev/myvg/homevol  
Prima di ridurre le dimensioni di un LV è importante effettuare un ridimensionamento del filesystem, altrimenti si rischia di perdere le informazioni in esso contenute.

Ad esempio

 
# e2fsadm -L-1G /dev/myvg/homevol  
riduce la dimensione del LV associato al dispositivo /dev/myvg/homevol di 1 GiB.

L’avvio e l’arresto di LVM può essere eseguito con i comandi vgscan (man page vgscan(8)) e vgchange (man page vgchange(8)).

... man page vgscan ...

... man page vgchange ...

Avvio

 
# vgscan # vgchange -ay  
Arresto

 
# vgchange -an