Volúmenes lógicos (LVM) Crear, modificar VG y LV

 

LVM es mucho más flexible, permitiendo añadir espacio adicional a volúmenes ya creados de manera transparente y simple.

Pasamos a ver los conceptos para entender la base del sistema.

Estructura LVM

Para que todo funcione es necesario instalar el paquete lvm10 o lvm2, recomiendo la versión 2 aunque la mayoría de distribuciones todavía mantengan la versión 1. Hay que asegurarse de que haya un script en el arranque para poner el marcha LVM.

Lo primero de todo es hacer las particiones, puede hacerse con cfdisk. Si se usa una versión anterior a la 2 de LVM, es obligatorio definir el tipo como Linux LVM.

Hay que destacar que la partición que contenga /boot no podrá formar parte de un volumen lógico, los cargadores de arranque no suelen soportarlo. En nuestro caso se trata de hda1.

Buscamos el nuevo disco

Si hemos agregado un disco hace poco podemos ver el device que ha sido generado con un fdisk -l. En mi caso he agregado un disco de 43Gb de mi VMWare a la maquina;

root@http:~# fdisk -l
Disc /dev/sdb: 42.9 GB, 42949672960 octets
255 heads, 63 sectors/track, 5221 cylinders
Units = cilindres of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Damos soporte para LVM a las otras dos particiones, este paso borrará TODOS los datos existentes.

root@http:~# pvcreate /dev/sdb
Physical volume “/dev/sdb” successfully created

Ahora creamos el VolumGroup que contendra tantos VolumGroup como queramos.

root@http:~# vgcreate VolumGroup2 /dev/sdb
Volume group “VolumGroup2” successfully created

Vamos a ver el resultado con vgdisplay:

root@http:~# vgdisplay
— Volume group —
VG Name               VolumGroup2
System ID
Format                lvm2
Metadata Areas        1
Metadata Sequence No  1
VG Access             read/write
VG Status             resizable
MAX LV                0
Cur LV                0
Open LV               0
Max PV                0
Cur PV                1
Act PV                1
VG Size               40,00 GiB
PE Size               4,00 MiB
Total PE              10239
Alloc PE / Size       0 / 0
Free  PE / Size       10239 / 40,00 GiB
VG UUID               0er3jx-M6p7-qsDC-WiHM-Qem3-n3R6-0xqhsK

Vamos a crear los volúmenes lógicos. Crearemos 2. Uno de 5, otro de 30 y dejaremos 5 libres para poder ampliar

root@http:~# lvcreate -L5,00G -n LV5GB VolumGroup2
Logical volume “LV5GB” created
root@http:~# lvcreate -L30,00G -n LV30GB VolumGroup2
Logical volume “LV30GB” created

El parámetro -L es lo “large” que es el disco. Vamos, el tamaño que queremos de LV. El parametro -n define el nombre del LV

Vamos a ver el resultado con LVDISPLAY

root@http:~# lvdisplay VolumGroup2
— Logical volume —
LV Name                /dev/VolumGroup2/LV5GB
VG Name               VolumGroup2
LV UUID                YAKkwE-tYrp-O233-3r1B-YzNi-cOn2-dE6FQT
LV Write Access        read/write
LV Status              available
# open                 0
LV Size                5,00 GiB
Current LE             1280
Segments               1
Allocation             inherit
Read ahead sectors     auto
– currently set to     256
Block device           254:6

— Logical volume —
LV Name                /dev/VolumGroup2/LV30GB
VG Name                VolumGroup2
LV UUID                gJTafK-o0Al-pDNt-UIXJ-nUtp-YAkx-oZgNz3
LV Write Access        read/write
LV Status              available
# open                 0
LV Size                30,00 GiB
Current LE             7680
Segments               1
Allocation             inherit
Read ahead sectors     auto
– currently set to     256
Block device           254:7

Vamos a darle formato con mkfs. Podemos realizar distintos formatos, XFS, EXT3 etc..

root@http:~# mkfs.ext3 /dev/VolumGroup2/LV30GB
mke2fs 1.41.12 (17-May-2010)
Etiqueta del sistema de fitxers=
Tipus de sistema operatiu: Linux
Mida del bloc=4096 (log=2)
Mida del fragment=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1966080 nodes-i, 7864320 blocs
393216 blocs (5.00%) reservats per al superusuari
Bloc de dades inicial=0
Màxim de blocs del sistema de fitxers=0
240 grups de blocs
32768 blocs per grup, 32768 fragments per grup
8192 nodes-i per grup
Còpies de seguretat del superbloc desades en els blocs:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000
Escriptura de les taules de nodes-i: 30/240
fet
Creació del registre de transaccions (32768 blocs): fet
Escriptura de la informació dels súperblocs i de comptabilitat del sistema de fitxers:fet


Agregar en fstab

Ahora solo queda agregar el disco en el fstab para que lo monte cada vez que arranque el sistema

/dev/VolumGroup2/LV30GB  /backup ext3 defaults 0 0

El resultado final

 

root@http:~# df -h
S. fitxers                                                      Mida En ús Lliure %Ãs Muntat a
/dev/mapper/pont-root                            322M  107M  199M  35% /
tmpfs                                                            125M     0  125M   0% /lib/init/rw
udev                                                              120M  120K  120M   1% /dev
tmpfs                                                             125M     0  125M   0% /dev/shm
/dev/sda1                                                     228M   15M  202M   7% /boot
/dev/mapper/pont-home                           2,7G   78M  2,5G   3% /home
/dev/mapper/pont-tmp                           225M  6,1M  208M   3% /tmp
/dev/mapper/pont-usr                               2,7G  495M  2,1G  20% /usr
/dev/mapper/pont-var                               1,4G  935M  337M  74% /var
/dev/mapper/VolumGroup2-LV30GB 30G  173M   28G   1% /backup

root@http:~# vgdisplay
— Volume group —
VG Name               VolumGroup2
System ID
Format                lvm2
Metadata Areas        1
Metadata Sequence No  3
VG Access             read/write
VG Status             resizable
MAX LV                0
Cur LV                2
Open LV               1
Max PV                0
Cur PV                1
Act PV                1
VG Size               40,00 GiB
PE Size               4,00 MiB
Total PE              10239
Alloc PE / Size       8960 / 35,00 GiB
Free  PE / Size       1279 / 5,00 GiB
VG UUID               0er3jx-M6p7-qsDC-WiHM-Qem3-n3R6-0xqhsK

 

Ampliar LogicalVolum

Si queremos ampliar el Volumen, tendremos que poner el nuevo tamaño, no el tamaño  ampliar

root@http:~# lvextend -L34G /dev/mapper/VolumGroup2-LV30GB
Extending logical volume LV30GB to 34,00 GiB
Logical volume LV30GB successfully resized

Indicamos al sistema el nuevo tamaño

root@http:~# resize2fs /dev/mapper/VolumGroup2-LV30GB
resize2fs 1.41.12 (17-May-2010)
El sistema de fitxers a /dev/mapper/VolumGroup2-LV30GB està muntat a /backup; cal un canvi de mida en línia
old desc_blocks = 2, new_desc_blocks = 3
Canvi de mida en línia de /dev/mapper/VolumGroup2-LV30GB a 8912896 (4k) blocs.
El sistema de fitxers a /dev/mapper/VolumGroup2-LV30GB té ara una mida de 8912896 blocs.

En XFS seria: xfs_growfs /punto_montaje

Ya tenemos ampliado el LV

root@http:~# df -h
S. fitxers                                                      Mida En ús Lliure %Ãs Muntat a
/dev/mapper/pont-root                            322M  107M  199M  35% /
tmpfs                                                            125M     0  125M   0% /lib/init/rw
udev                                                              120M  120K  120M   1% /dev
tmpfs                                                             125M     0  125M   0% /dev/shm
/dev/sda1                                                     228M   15M  202M   7% /boot
/dev/mapper/pont-home                           2,7G   78M  2,5G   3% /home
/dev/mapper/pont-tmp                           225M  6,1M  208M   3% /tmp
/dev/mapper/pont-usr                               2,7G  495M  2,1G  20% /usr
/dev/mapper/pont-var                               1,4G  935M  337M  74% /var
/dev/mapper/VolumGroup2-LV30GB 34G  177M   32G   1% /backup

 

Agregar un disco al VolumGroup

Primero detectamos el nuevo disco y creamos el soporte a VolumGroup:

pvcreate /dev/hdb1


Luego ampliamos el VolumGroup

vgextend grupo_volumen /dev/hdb1

 


Mas información en: http://www.tldp.org/HOWTO/LVM-HOWTO/

Advertisements