Está en la página 1de 7

LVM

Fuentes:
https://wiki.ubuntu.com/Lvm
https://es.wikipedia.org/wiki/Logical_Volume_Manager

Introducción
LVM es una implementación de un administrador de volúmenes lógicos para el kernel Linux. Se escribió
originalmente en 1998 por Heinz Mauelshagen.

Algunas características reseñables de LVM son:


• Redimensionado de grupos lógicos
• Redimensionado de volúmenes lógicos
• RAID0 de volúmenes lógicos.
• Administración en grupos definidos por el usuario, permitiendo al administrador del sistema tratar
con volúmenes llamados, por ejemplo, "ventas" o "desarrollo", en vez de nombres de dispositivos
físicos, como "sda" o "sdb".

Importante: LVM no implementa RAID1 o RAID5, por lo que se recomienda usar software específico de
RAID para estas operaciones, teniendo las LV por encima del RAID

La gestión de volúmenes lógicos proporciona una vista de alto nivel sobre el almacenamiento en un
ordenador, en vez de la tradicional vista de discos y particiones.

Anatomía de un LVM
Un LVM se descompone en tres partes:

• Volúmenes físicos (PV, Phisical Volumen): Particiones del disco duro con sistema de archivos LVM.
• Volúmenes lógicos (LV, Logical Volumen): Equivalente a una partición en un sistema tradicional.
• Grupos de volúmenes (VG): es la parte superior de la LVM. Es la "caja" en la que tenemos nuestros
volúmenes lógicos (LV) y nuestros volúmenes físicos (PV). Se puede ver como una unidad
administrativa en la que se engloban nuestros recursos.
Importante: Mientras un PV no se añada al VG no podemos comenzar a usarlo.
Chequeo del sistema de ficheros
Periódicamente será necesario chequear/verificar los sistemas de ficheros. El comando básico para
chequeo y reparación es fsck al igual que mkfs, fsck es un front-end de comandos específicos para cada
sistema de archivos:

Herramientas Sistema de archivos


e2fsck, fsck.ext2, fsck.ext3, fsck.ext4 ext2/ext3/ext4
fsck.jfs, fsck.reiserfs, fsck.xfs JFS, ReiserFS y XFS
fsck.msdos, fsck.vfat MS-DOS

Algunas de las opciones de fsck son:

 -t filesystem tipo de filesystem a chequear


 -A chequea los filesystems listados en /etc/fstab
 -N no ejecuta; simplemente indica lo que haría
 -R usado con -A no chequea el filesystem raíz

Posibles errores

0 – No errors
1 – Filesystem errors corrected
2 – System should be rebooted
4 – Filesystem errors left uncorrected
8 – Operational error
16 – Usage or syntax error
32 – Fsck canceled by user request
128 – Shared-library error
Utilidades básicas en Linux

du
→ Muestra el espacio de disco usado por los ficheros y subdirectorios de un directorio

Sintaxis
du [opciones ] [directorio ]

Algunas opciones:
 -a // muestra valores para ficheros y directorios (por defecto, solo muestra directorios)
 -b, -k // tamaños en bytes/KBytes
 -h //salida más legible
 -s // muestra sólo la ocupación total

df
→Muestra el espacio de disco usado y disponible de los sistemas de ficheros montados

Sintaxis
df [opciones ]

Algunas opciones:
 -a // muestra todos los filesystems (incluso los de tamaño 0)
 -h // salida más legible –formato humano-
 -i // información sobre los inodos
 -l // sólo muestra sistemas de archivos locales
 -T // muestra el tipo de sistema de ficheros

Comandos de volúmenes físicos


pvchange | Cambia los atributos de un volumen físico
pvcreate | Crea un volumen físico
Este comando lo utilizaremos para que el volumen físico pueda ser usado por LVM.
pvcreate /dev/sdd1
pvdata | Muestra información de depuración sobre un volumen físico
pvdisplay | Muestra información sobre un volumen físico
pvmove | Mueve extensiones físicas de un volumen físico a otro.
pvscan | Localiza y enumera todos los volúmenes físicos

Comandos de grupos volumen

vgcfgbackup |Hace una copia del área del descriptor de grupo volumen
vgcfgrestore |Recupera el área del descriptor de grupo volumen al disco
vgchange |Cambia los atributos de un grupo volumen
vgck |Comprueba la consistencia del área del descriptor de grupo volumen
vgcreate |Crea un grupo volumen a partir de volúmenes físicos
vgdisplay |Muestra los atributos de un grupo volumen
vgexport |Exporta un grupo volumen del sistema
vgextend |Añade volúmenes físicos a un grupo volumen
vgimport |Importa un grupo volumen al sistema
vgmerge |Combina dos grupos volumen
vgmknodes |Combina un directorio y los archivos especiales de un grupo volumen
vgreduce |Elimina volúmenes físicos de un grupo volumen
vgremove |Elimina un grupo volumen
vgrename |Renombra un grupo volumen
vgscan |Localiza y enumera todos los grupos volumen del sistema
vgsplit |Divide un grupo volumen

Comandos de volúmenes lógicos


lvchange |Cambia los atributos de un volumen lógico
lvcreate |Crea un volumen lógico
lvdisplay |Muestra los atributos de un volumen lógico
lvextend |Incrementa el tamaño de un volumen lógico
lvreduce |Reduce el tamaño de un volumen lógico
lvremove |Elimina un volumen lógico
lvrename |Renombra un volumen lógico
lvscan |Localiza y enumera todos los volúmenes lógicos, creando /etc/lvmtab y
/etc/lvmtab.d/*

Comandos del Administrador de Volúmenes Lógicos (LVM)


lvmchange |Cambia los atributos del sistema LVM
lvmdiskscan |Localiza y enumera todos los discos disponibles, los dispositivos múltiples y las
particiones
lvmsadc |Recoge información sobre la actividad de LVM
lvmsar |Muestra información sobre la actividad de LVM
Ejemplos de aplicación
Ampliación de una partición sobre LVM
En primer lugar necesitamos obtener el nombre del volumen lógico de la partición a ampliar

# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/GV1-root 3.8G 2.9G 770M 80% /
/dev/mapper/GV1-home 1.5G 1.4G 1.9M 100% /home
/dev/mapper/GV1-tmp 485M 11M 449M 3% /tmp
/dev/mapper/GV1-var 1.9G 1.1G 753M 60% /var
/dev/sda1 99M 25M 70M 27% /boot
tmpfs 1002M 0 1002M 0% /dev/shm

Ahora necesitamos conocer el nombre del grupo de volumen donde está creado nuestra partición.

# lvdisplay /dev/mapper/GV1-home
--- Logical volume ---
LV Name /dev/GV1/home
VG Name GV1
LV UUID pzBSAL-dvH9-2hv5-sfnM-YGES-3pWC-JGk9mq
LV Write Access read/write
LV Status available
# open 1
LV Size 2.49 GB
Current LE 637
Segments 3
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1

Ahora hemos de comprobar que hay espacio disponible para la ampliación. Si no fuera así deberíamos dar
más espacio a este volume group.

# vgdisplay GV1
--- Volume group ---
VG Name GV1
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 12
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 4
Open LV 4
Max PV 0
Cur PV 3
Act PV 3
VG Size 19.39 GB
PE Size 4.00 MB
Total PE 4964
Alloc PE / Size 2262 / 8.84 GB
Free PE / Size 2702 / 10.55 GB
VG UUID zqOdUf-3Y0b-78Gv-RUzO-8Ji3-ujpa-I0DaXw

Si no tuviéramos espacio disponible, deberemos extender nuestro grupo de volumen:

vgextend GV1 /dev/sdb1

Como tenemos espacio libre podemos ampliar la partición. Lo hacemos con el comando lvresize (en el
ejemplo la ampliamos en 1 GB):

# lvdisplay /dev/mapper/GV1-home
# lvresize -L +100MB /dev/mapper/GV1-home
Extending logical volume home to 2.49 GB
Logical volume home successfully resized

Importante: El tamaño que se le da al volumen lógico es un valor igual o menor al tamaño total
disponible en el grupo volumen (o sea la sumatoria de bytes de los VF que están asignados a GV).

Ahora tenemos que extender el sistema de ficheros. Lo hacemos con el comando resize2fs:

# resize2fs -p /dev/mapper/GV1-home
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/mapper/GV1-home is mounted on /home; on-line resizing required
Performing an on-line resize of /dev/mapper/GV1-home to 2609152 (1k) blocks.
The filesystem on /dev/mapper/GV1-home is now 2609152 blocks long.
Los dos comandos anteriores los podríamos ejecutar con uno solo si añadimos el flag -r al comando
lvresize. El comando quedaría como sigue:

# lvresize -r -L +1GB /dev/mapper/GV1-home

Ahora ya podemos ver el resultado:

# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/GV1-root 3.8G 2.9G 770M 80% /
/dev/mapper/GV1-home 2.5G 1.4G 943M 60% /home
/dev/mapper/GV1-tmp 485M 11M 449M 3% /tmp
/dev/mapper/GV1-var 1.9G 1.1G 753M 60% /var
/dev/sda1 99M 25M 70M 27% /boot
tmpfs 1002M 0 1002M 0% /dev/shm

Si en lugar de querer ampliar la partición en una cantidad determinada, lo que quisiéramos es aprovechar
todo el espacio disponible en el volumen podríamos usar el siguiente comando:

# lvresize -r -L +100%FREE /dev/mapper/GV1-home

También podría gustarte