Cambiar el tamaño de un volumen lógico en Linux no es muy difícil y se puede lograr a través de un enfoque muy sencillo. Estos son los pasos habituales:
- Cree una nueva partición en el disco duro.
- Agregue la partición que acaba de crear como un volumen físico.
- Agregue el nuevo volumen físico al grupo de volúmenes.
- Asigne espacio del grupo de volúmenes al volumen lógico.
- Cambie el tamaño del sistema de archivos.
Pero en este escenario, tiene el sistema de archivos raíz (como una partición LVM) montado en una partición extendida, no dentro de una partición primaria. Solo tiene una partición primaria que está montada en /boot y el resto del espacio es parte de esa partición extendida.
¿Suena problemático? Déjame mostrarte cómo cambiar el tamaño de LVM dentro de la partición extendida.
Cambiar el tamaño de la partición LVM dentro de la partición extendida
Estoy usando un Linux instalado en una máquina virtual en este tutorial.
Tenga en cuenta que debe tener mucho cuidado al tratar con particiones de disco.Paso 1: Apague su VM y aumente el tamaño del disco
Primero, apague su VM y aumente el tamaño del disco. Aquí, aumenté el tamaño del disco /dev/sda en 20 GB a alrededor de 40 GB. Luego inicie su VM y vaya a la consola.
Eche un vistazo a nuestras particiones de disco.
[email protected]:~# fdisk -l
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a975f
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 499711 248832 83 Linux
/dev/sda2 501758 41940991 20719617 5 Extended
/dev/sda5 501760 41940991 20719616 8e Linux LVM
Si analiza el espacio en disco con el comando df, esto es lo que me muestra:
[email protected]:~# df -hT
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 989M 4.0K 989M 1% /dev
tmpfs tmpfs 201M 716K 200M 1% /run
/dev/dm-0 ext4 19G 1.5G 16G 9% /
none tmpfs 4.0K 0 4.0K 0% /sys/fs/cgroup
none tmpfs 5.0M 0 5.0M 0% /run/lock
none tmpfs 1001M 0 1001M 0% /run/shm
none tmpfs 100M 0 100M 0% /run/user
/dev/sda1 ext2 236M 40M 184M 18% /boot
Aquí, el objetivo es aumentar el tamaño de la partición /dev/dm-0 que está montada en /dev/sda5.
Permítame mostrarle también el estado actual de los volúmenes físicos, grupos de volúmenes y volúmenes lógicos:
[email protected]:~# lvs
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert
root ubuntu14-vg -wi-ao--- 18.74g
swap_1 ubuntu14-vg -wi-ao--- 1020.00m
[email protected]:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 ubuntu14-vg lvm2 a-- 19.76g 20.00m
[email protected]:~# vgs
VG #PV #LV #SN Attr VSize VFree
ubuntu14-vg 1 2 0 wz--n- 19.76g 20.00m
Todos tienen alrededor de 20 GB de espacio de almacenamiento asignado.
Paso 2:Comience el proceso de cambio de tamaño de LVM
Estos son los pasos para cambiar el tamaño de la partición LVM:
Abra la utilidad fdisk y observe las particiones:
[email protected]:~# fdisk /dev/sda
Command (m for help): p
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a975f
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 499711 248832 83 Linux
/dev/sda2 501758 41940991 20719617 5 Extended
/dev/sda5 501760 41940991 20719616 8e Linux LVM
Elimine la partición extendida (/dev/sda2) usando el comando d
, que eliminará automáticamente la partición LVM subyacente que es /dev/sda5.
Command (m for help): d
Partition number (1-5): 2
Cree una nueva partición nuevamente como extendida usando el comando n
con valores de cilindro de inicio y final predeterminados.
Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): e
Partition number (1-4, default 2):
Using default value 2
First sector (499712-83886079, default 499712):
Using default value 499712
Last sector, +sectors or +size{K,M,G} (499712-83886079, default 83886079):
Using default value 83886079
Command (m for help): p
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a975f
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 499711 248832 83 Linux
/dev/sda2 499712 83886079 41693184 5 Extended
Cree una partición lógica (dev/sda5) utilizando los valores de cilindro de inicio y final predeterminados.
Command (m for help): n
Partition type:
p primary (1 primary, 1 extended, 2 free)
l logical (numbered from 5)
Select (default p): l
Adding logical partition 5
First sector (501760-83886079, default 501760):
Using default value 501760
Last sector, +sectors or +size{K,M,G} (501760-83886079, default 83886079):
Using default value 83886079
Cambia al modo experto presionando x
.
Command (m for help): x
Ejecutar comando experto b
para ajustar el comienzo de la partición (esto cambia el tamaño de la partición, no donde termina). Ingrese el valor inicial como estaba antes de eliminar las particiones. Aquí está 501760.
Expert command (m for help): b
Partition number (1-5): 5
New beginning of data (499713-83886079, default 501760): 501760
Luego ejecuta r
para volver al menú principal.
Expert command (m for help): r
Verifique el número de partición solo para asegurarse.
Command (m for help): p
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000a975f
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 499711 248832 83 Linux
/dev/sda2 499712 83886079 41693184 5 Extended
/dev/sda5 501760 83886079 41692160 83 Linux
Ahora cambie el tipo de partición a LVM presionando t
comando y eligió escribir 8e
.
Command (m for help): t
Partition number (1-5): 5
Hex code (type L to list codes): 8e
Changed system type of partition 5 to 8e (Linux LVM)
Presione w
para escribir todos los cambios en el disco.
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
Syncing disks.
Paso 3:Realizar cambios manuales al volumen físico y lógico
Ejecute el comando partprobe para informar al sistema operativo sobre los cambios en la tabla de particiones:
[email protected]:~# partprobe /dev/sda
Ejecute el comando lsblk para ver que /dev/sda5 ahora tiene un tamaño de alrededor de 40 GB (para mí).
[email protected]:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 40G 0 disk
├─sda1 8:1 0 243M 0 part /boot
├─sda2 8:2 0 1K 0 part
└─sda5 8:5 0 39.8G 0 part
├─ubuntu14--vg-root (dm-0) 252:0 0 18.8G 0 lvm /
└─ubuntu14--vg-swap_1 (dm-1) 252:1 0 1020M 0 lvm [SWAP]
sr0 11:0 1 1024M 0 rom
Ejecute el comando df y notará que /dev/dm-0 todavía muestra los detalles del tamaño anterior:
[email protected]:~# df -hT
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 989M 4.0K 989M 1% /dev
tmpfs tmpfs 201M 716K 200M 1% /run
/dev/dm-0 ext4 19G 1.5G 16G 9% /
none tmpfs 4.0K 0 4.0K 0% /sys/fs/cgroup
none tmpfs 5.0M 0 5.0M 0% /run/lock
none tmpfs 1001M 0 1001M 0% /run/shm
none tmpfs 100M 0 100M 0% /run/user
/dev/sda1 ext2 236M 40M 184M 18% /boot
Lo mismo ocurre con los volúmenes físicos, los grupos de volúmenes y los volúmenes lógicos:
[email protected]:~# lvs
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert
root ubuntu14-vg -wi-ao--- 18.74g
swap_1 ubuntu14-vg -wi-ao--- 1020.00m
[email protected]:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 ubuntu14-vg lvm2 a-- 19.76g 20.00m
[email protected]:~# vgs
VG #PV #LV #SN Attr VSize VFree
ubuntu14-vg 1 2 0 wz--n- 19.76g 20.00m
Tendrás que hacer un poco de esfuerzo manual aquí.
Cambiar el tamaño del volumen físico:
[email protected]:~# pvresize /dev/sda5
Physical volume "/dev/sda5" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
Ahora compruebe el estado del grupo Volumen físico y Volumen y compruebe que muestra correctamente el nuevo tamaño:
[email protected]:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 ubuntu14-vg lvm2 a-- 39.76g 20.02g
[email protected]:~# vgs
VG #PV #LV #SN Attr VSize VFree
ubuntu14-vg 1 2 0 wz--n- 39.76g 20.02g
Del mismo modo, cambie el tamaño del volumen lógico:
[email protected]:~# lvextend -l +100%FREE /dev/ubuntu14-vg/root
Extending logical volume root to 38.76 GiB
Logical volume root successfully resized
Por último, cambia el tamaño del sistema de archivos:
[email protected]:~# resize2fs /dev/ubuntu14-vg/root
resize2fs 1.42.9 (4-Feb-2014)
Filesystem at /dev/ubuntu14-vg/root is mounted on /; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 3
The filesystem on /dev/ubuntu14-vg/root is now 10161152 blocks long.
Verifique el estado del disco y vea que LVM ahora está redimensionado correctamente:
[email protected]:~# df -hT
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 989M 4.0K 989M 1% /dev
tmpfs tmpfs 201M 716K 200M 1% /run
/dev/dm-0 ext4 39G 1.5G 35G 4% /
none tmpfs 4.0K 0 4.0K 0% /sys/fs/cgroup
none tmpfs 5.0M 0 5.0M 0% /run/lock
none tmpfs 1001M 0 1001M 0% /run/shm
none tmpfs 100M 0 100M 0% /run/user
/dev/sda1 ext2 236M 40M 184M 18% /boot
¡Eso es todo! Has redimensionado con éxito la partición LVM dentro de una partición extendida.
¿Preguntas o sugerencia? Deja un comentario a continuación.