En esta ocasión necesitaba restarle 10GB al LVM para crear una nueva partición auxiliar para Windows.
El problema con el que me encontré es que las instalaciones por defecto meten el LVM en una única partición, esto no tiene porque ser un problema a menos que quieras recortarla y te encuentres que:
sda3 (139GB): (primaria)
|| swap || home || root ||
3GB 86GB 50GB
Si quisiera haber recortado el espacio del root no habria tenido ningun problema al encontrarse al final del volumen físico pero al ser el home no podía realizar el pvmove, al seguir esta guia:
http://fedorasolved.org/Members/zcat/shrink-lvm-for-new-partition
El pvmove aun moviendolo en el mismo disco duro "pvmove --alloc anywhere" no te va a dejar debido a que los ultimos extents del lv_root estan alocados.
La única solución posible era tirar de un disco externo y pvmove el home a este, pvmove el root al espacio del home antiguo (ahora hueco), redimensionar la particion sda3, crear una nueva particion y adjuntarla al LVM y pvmove el /home a esta. Finalmente opté por mover ambos volumenes, por considerarla mas "segura e intuitiva". (ver resumen final)
Para realizar estos cambios me he apoyado de un live-cd de Fedora 16 que tenia rondando de este sistema (ordenador para la universidad ,que ya va por Fedora 19) a la cual le instalé gparted y sobretodo system-config-lvm (por una vez opté por hacerlo de forma gráfica) para adjuntar el volumen externo y realizar los pvmove.
Al final el resultado ha sido (le recorté un GB al swap, tengo 1,5GB de RAM y 2 máximos permitidos):
sda3 (53GB): (primaria)
|| swap || root ||
2GB 51GB
sda5 (74GB): (extendida)
|| home ||
74GB
¿Que he aprendido?
- Que existe el system-config-lvm, incluso los system-config-...
- Que es aconsejable meter cada volumen fisico en una partición o por lo menos los volumenes mayores en una partición aparte con el facilitar posibles cambios de tamaño en particular las reducciones.
- El uso de pvmove.
- Que en LVM es bastante robusto, le he realizado bastantes cambios al sistema y no se ha visto afectado.
- Que el lvresize no comprueba el espacio disponible y puedes redimensionar el volumen logico a 76e/E (Exabytes) si quieres (pensaba que significaban Extents :P ).
1-Arrancar con live-cd
2-Adjuntar disco externo USB, particionarlo y añadirlo al grupo de volumenes.
3-pvmove con system-config-lvm las particiones home y root
4-pvmove root de vuelta a sda3
5-resize2fs -p /dev/vg_uni/lv_root 51G
6-lvm lvresize /dev/vg_uni/lv_root --size 51G
7-lvm pvresize /dev/sda3 --setphysicalvolumesize 51G
(realizar calculos de sectores en sda3)
8-parted /dev/sda rm 3
parted /dev/sda mkpart primary 21508096s 132722688s (comprobando bien la suma...)
parted /dev/sda set 3 lvm on
parted /dev/sda print
fsck -fCv /dev/vg_uni/lv_root
(aumentamos hasta el sobrante)
9-lvm lvresize /dev/vg_uni/lv_root -L +57 (le agrego los libres) tambien podria ser lvresize /dev/vg_uni/lv_root -L +100FREE
10-resize2fs -p /dev/vg_uni/lv_root
11-fsck -fCv /dev/vg_uni/lv_root
Y ahora con el gparted crear una extendida con el espacio libre y dentro una de 74GB (lvm ext4) y otra de 10GB (ntfs).
1-Seguidamente adjuntar la extendida ext4 (sda5) y pvmove el home allí con system-config-lvm
2-Ocupar los posibles libres.
3-Desajuntar el disco externo USB del grupo de volumenes y quitarlo de LVM con system-config-lvm.
Y listo, no he tenido que tocar nada en grub, fstab ni en ningun fichero de LVM (quizás por haber conservado /root en sda3, la verdad no me quita el sueño :D).
Logicamente sino hubiera utilizado pvmove no se hubieran conservado los UUID y entonces si habría que realizar cambios.
No hay comentarios:
Publicar un comentario