Home > Debian / Ubuntu, RHEL / Fedora / CentOS, Server > Come configurare i volumi logici con LVM

Come configurare i volumi logici con LVM

LVM (Logical Volume Manager) è un gestore dello spazio del disco fisso in volumi logici, che possono essere facilmente ridimensionati.

In fondo a questa guida trovate dei link di approfondimento sulla tecnologia e sul funzionamento teorico dell’LVM, mentre di seguito trovate i passi per realizzare in pratico un sistema LVM.

La struttura che utilizzeremo sarà la seguente, configurare l’LVM con 1 Volume Group, 2 Physical Volume, e 3 Logical Volume.

Il S.O. utilizzato è GNU/Debian, ma i comandi riportati sono compatibili con qualsiasi sistema che supporta LVM.

La prima operazione da eseguire è partizionare i nostri dischi e impostarli come PV dell’LVM. Una guida su come partizionare un disco potete trovarla a questo link.

Creazione di un PV

Prima di tutto vediamo alcune info dell’lvm sul nostro sistema con il seguente comando:

vgscan

Questo comando esegue uno scan su tutti i dischi, con un output informativo con tutte le informazioni di eventuali Volume Group presenti e la versione di lvm in uso.

Creazione del PV su entrambi i dischi:

pvcreate /dev/hdc1
Physical volume “/dev/hdc1″ successfully created

pvcreate /dev/hda1
Physical volume “/dev/hda1″ successfully created

Per controllare l’effettiva creazione dei PV

pvdisplay /dev/hdc1
“/dev/hdc1″ is a new physical volume of “38,29 GB”
— NEW Physical volume —
PV Name /dev/hdc1
VG Name
PV Size 38,29 GB
Allocatable NO
PE Size (KByte) 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID SzHtKP-IRGs-KVnb-GOA4-hRzb-lBDt-WJRr5v

Riceverete una serie di informazioni sul PV appena creato. Lo stesso potete fare per /dev/hda1.

Creazione del VG

A questo punto dobbiamo creare un VG che conterrà i due PV appena creati:

vgcreate testvg /dev/hdc1 /dev/hda1

Per controllare l’effettiva creazione del Volume Group

vgdisplay testvg

Creazione dei LV

Ora è arrivato il momento di creare i LV all’interno del nostro VG di test. Ad esempio procediamo alla creazione di 3 LVM di 2GB:

lvcreate -L 2000 -n lvdati testvg
lvcreate -L 2000 -n lvbackup testvg
lvcreate -L 2000 -n lvdb testvg

Per controllare l’effettiva creazione di ogni Logical Volume

lvdisplay [Nome LV]

ex. lvdisplay /dev/testvg/lvdati

Creazione dei File Systems

A questo punto ogni LV rappresenta per noi una partizione su cui possiamo creare un File System e salvare i nostri dati. Per la creazione del file system con ext3

mkfs.ext3 /dev/testvg/lvdati

Creazione dei punti di Mount

mkdir /fs1

mount -t ext3 /dev/testvg/lvdati /fs1

Per il montaggio automatico dei File systems all’avvio del sistema modificare il file /etc/fstab

vi /etc/fstab

Inserire al suo interno:

/dev/testvg/lvdati /fs1 ext3 defaults 0 0

Estensione e Riduzione dei LV e dei rispettivi FS

Per tutte le seguenti operazioni è necessario che il FS in questione sia smontato

umount /fs1

Per estendere il LV di 1000M

lvextend -L+1000 /dev/testvg/[NOME LV]

Per impostare direttamente la nuova dimensione dell’LV a 4000M

lvextend -L 4000 /dev/testvg/[NOME LV]

Se proviamo a controllare ora i nostri LV in cui abbiamo aumentato la dimensione, con il comando lvdisplay, potremo constatare che la dimensione è quella impostata con il comando lvextend.
Però se provassimo a montare tale LV vedremo che il FS avrà una dimensione di 2G, cioè la dimensione con cui lo abbiamo creato. Questo perchè è necessario aumentare il nostro FS da 2G alla dimensione attuale. Prima di tutto facciamo un check sul FS:

e2fsck -f /dev/testvg/[NOME LV]

poi facciamo il reale resize del FS:

resize2fs /dev/testvg/[NOME LV]

Solo adesso avremo il nostro FS della dimensione impostata con il comando lvextend. Ovviamente in questa guida ho usato il FS ext3 ma potete usare qualsiasi FS.

Riduzione del LV
In questo caso, bisogna procedere nel seguente modo

e2fsck -f /dev/testvg/[NOME LV]
resize2fs -p /dev/testvg/[NOME LV] 2000M

Ora il nostro FS è di 2G ma il nostro LV è ancora di 4G, prima di ridurlo dobbiamo disattivarlo con il seguente comando

lvchange -a n /dev/testvg/[NOME LV]

poi

lvreduce -L -2000 /dev/testvg/[NOME LV]

Per riattivarlo

lvchange -a y /dev/testvg/[NOME LV]

Possiamo controllare lo stato del LV con il comando lvdisplay in particolare il record LV Status.

Aggiungere un PV ad un VG

vgextend testvg /dev/hdc1

Rimozione di un LV da un VG

Per rimuovere un LV da un VG

lvremove -f /dev/testvg/[NOME LV]

Rimozione di un VG

Per effettuare la rimozione di un VG questo deve essere prima disattivato

vgchange -a n testvg

infine possiamo rimuovere

vgremove testvg

Per chi volesse approfondire:

LVM con 1 Volume Group, 2 Physical Volume, e 3 Logical Volume.

Mit.edu

Openskill.info

  1. Nessun commento ancora...
  1. Nessun trackback ancora...