This is an old revision of the document!
Table of Contents
LVM
Logical Volume Manager
Saber el sistema de ficheros de un LV (como el fdisk)
# file --special-files /dev/mapper/datavg-nom_lv /dev/mapper/datavg-nom_lv: Linux rev 1.0 ext2 filesystem data (mounted or unclean)
Montar LVM desde Live CD
ANTECEDENTES
Tenemos un disco duro con dos particiones:
/dev/sda1 ⇒ /boot /dev/sda5 ⇒ extendida LVM
Hemos trasteado el LVM y no arranca. Para montar LVM desde una live-cd:
1. Arrancar desde la live-cd
2. Buscar el VG:
vgscan
3. Activar el VG:
vgchange -a y vg_encontrado_paso_2
4. Montar el LV en cuestión, en mi caso el raíz:
4.1 mkdir /mnt/auxiliar
4.2 mount /dev/mapper/vg_encontrado_paso_2-root /mnt/auxiliar
Reducir tamanyo LV
https://www.redhat.com/archives/linux-lvm/2006-August/msg00081.html
ANTECEDENTES
Tenemos un VG (Grupo de Volúmenes) con 3 LV (Volumen Lógico):
/ /home /swap
Queremos achicar el LV /home para dejar espacio con el objeto de crear en ese espacio liberado un cuarto LV, donde montar /var
1. (Todo como root) obtenemos información del VG:
clear && lvdisplay
--- Logical volume --- LV Name /dev/volumen/root VG Name volumen LV UUID ErCMtp-5H0L-cUv9-AS7L-B1Gq-9fuM-xFtcDN LV Write Access read/write LV Status available # open 1 LV Size 6,68 GB Current LE 1709 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 254:0 --- Logical volume --- LV Name /dev/volumen/swap_1 VG Name volumen LV UUID ly0S8s-MC2A-31yG-1dba-NYZk-ohQ0-yg1o6l LV Write Access read/write LV Status available # open 2 LV Size 2,59 GB Current LE 664 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 254:1 --- Logical volume --- LV Name /dev/volumen/home VG Name volumen LV UUID uQkCYh-3u1z-s6yq-0dpA-Q6MK-5PIO-7zAoy9 LV Write Access read/write LV Status available # open 1 LV Size 65,00 GB Current LE 16639 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 254:2
2. Desmontar la partición (por si las moscas, pero creo que desde el kernel 2.6 con sistemas de ficheros EXT3 NO es necesario). Es mejor si salimos del entorno gráfico:
umount /dev/mapper/volumen-home
3. Entrar en la consola de lvm y realizar unas operaciones:
3.1 lvm 3.2 Buscamos VG:
vgscan
3.3 Activamos el VG:
vgchange -a y VolGroup00
3.4 Generamos los ficheros de dispositivos ¿?:
vgmknodes
3.5 Salimos de la consola lvm:
exit
4. Achicar el sistema de ficheros
4.1 Comprobar el sistema de ficheros del LV:
e2fsck -f /dev/mapper/volumen-home
4.2 Redimensionar la partición ¿? (por ejemplo a 35 Gigas):
resize2fs /dev/mapper/volumen-home 35G
5. Achicar el LV:
5.1 Entrar en la consola lvm:
lvm
5.2 Reducir el LV (NOTA: según el tutorial la ruta es distinta, pero a mí tras avisarme que se podían perder datos me funcionó):
lvreduce -L36G /dev/volumen/home
O:
lvextend -L36G /dev/volumen/home
Creo que tanto da que da lo mismo
5.3 Salir de la consola:
exit
6. Expandir el sistema de ficheros al tamaño total del volumen.
resize2fs /dev/mapper/volumen-home
A mi me dijo que no se hacia nada
7. Aqui se puede volver a montar el sismte a de ficheros y ver los cambios. Más simple reiniciar
Forma 2 en caliente
lvreduce -L19G /dev/mapper/fixe-home fixe:/home/jose/Desktop/Downloads# lvdisplay --- Logical volume --- LV Name /dev/fixe/root VG Name fixe LV UUID pi5FAr-znWl-Wkma-a5FB-Lvku-Mmv3-e1vcJO LV Write Access read/write LV Status available # open 1 LV Size 332.00 MB Current LE 83 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 254:0 --- Logical volume --- LV Name /dev/fixe/usr VG Name fixe LV UUID AHwTdB-ev37-LmDi-4ldW-k0fT-GD3Z-ajzZjl LV Write Access read/write LV Status available # open 1 LV Size 4.66 GB Current LE 1192 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 254:1 --- Logical volume --- LV Name /dev/fixe/var VG Name fixe LV UUID 41g0b1-YrLd-cHte-AoOT-Wtuz-4OSy-B59aJl LV Write Access read/write LV Status available # open 1 LV Size 2.79 GB Current LE 715 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 254:2 --- Logical volume --- LV Name /dev/fixe/swap_1 VG Name fixe LV UUID ndI2u3-Si6h-tB1U-lLoB-b7o6-cjQt-pIGoAH LV Write Access read/write LV Status available # open 2 LV Size 3.84 GB Current LE 983 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 254:3 --- Logical volume --- LV Name /dev/fixe/tmp VG Name fixe LV UUID PuyyLe-lwAF-xsK3-XSbX-UabV-YKea-ZUnLl4 LV Write Access read/write LV Status available # open 1 LV Size 380.00 MB Current LE 95 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 254:4 --- Logical volume --- LV Name /dev/fixe/home VG Name fixe LV UUID DTGGm1-lOem-0po1-BApp-ave5-wh2p-qLWCVk LV Write Access read/write LV Status available # open 1 LV Size 19.00 GB Current LE 4864 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 254:5 # lvreduce -L19G /dev/mapper/fixe-home WARNING: Reducing active and open logical volume to 19.00 GB THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce home? [y/n]: y Reducing logical volume home to 19.00 GB Logical volume home successfully resized # lvextend -L1G /dev/mapper/fixe-root Extending logical volume root to 1.00 GB Logical volume root successfully resized # resize2fs /dev/mapper/fixe-root resize2fs 1.41.3 (12-Oct-2008) Filesystem at /dev/mapper/fixe-root is mounted on /; on-line resizing required old desc_blocks = 2, new_desc_blocks = 4 Performing an on-line resize of /dev/mapper/fixe-root to 1048576 (1k) blocks. The filesystem on /dev/mapper/fixe-root is now 1048576 blocks long. # resize2fs /dev/mapper/fixe-home resize2fs 1.41.3 (12-Oct-2008) Filesystem at /dev/mapper/fixe-home is mounted on /home; on-line resizing required On-line shrinking from 6564864 to 4980736 not supported.
Reducir un LV y crear uno de nuevo
Tenemos 80 Gb en home y queremos pasar 20 a una unidad de apoyo
Reducimos tamaño del primer LV:
lvreduce -L60G /dev/mapper/vol64-64_home
Creamos el LV de apoyo:
lvcreate vol64 --name apoyo --size=20G
Formatemos el LV:
mkfs.ext3 /dev/mapper/vol64-apoyo
Ya está listo para montar