Distribuciones Linux
0

Linux: Ampliar volumenes logicos

Por norma general, cuando tenemos un volumen lógico y queremos ampliarlo, hay ocasiones que nos vemos en la tesitura de como ampliarlo sin perder la información existente.

Vamos a explicar como hacerlo de manera sencilla y ágil.

Lo primero que vamos a necesitar es que tengamos parte del disco sin asignar:


Disk /dev/sdb: 108.4 GB, 108447924224 bytes, 211812352 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 label type: dos
Disk identifier: 0xcfd3ae28


Device Boot Start End Blocks Id System
/dev/sdb1 2048 106954751 53476352 8e Linux LVM

Como podemos ver, tenemos asignados 50GB y nos quedan 50GB más por asignar en nuestro disco sdb.

Como tenemos claro que es lo que queremos y vemos que tenemos espacio disponible, procedemos a crear otra nueva partición mediante el fdisk.
fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x8a8678bb.

Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p):
Using default response p
Partition number (2-4, default 2):
First sector (106954752-211812351, default 106954752):
Using default value 106954752
Last sector, +sectors or +size{K,M,G} (106954752-211812351, default 211812351):
Using default value 211812351
Partition 2 of type Linux and of size 50 GiB is set


Command (m for help): t
Selected partition 1
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Con esto, ya tenemos la partición creada con el contenido que queremos ampliar.

Ahora que ya lo tenemos grabado, seguimos haciendo el pvcreate.

pvcreate /dev/sdb2
Physical volume "/dev/sdb2" successfully created.

De esta manera, ya tenemos creado el pv que se usará para ampliar el existente.

Ahora y para que sea ampliado el VG hay que agregar la cantidad de espacio mediante el vgextend

vgextend vgdatos /dev/sdb2

Nos tiene que aparecer algo como esto:

Volume group "vgdatos" successfully extended

Ahora que ya se ha agregado la cantidad correspondiente, vamos a tener que extender el LV sobre la nueva cantidad que se ha agregado, por lo que usaremos el siguiente comando:

lvextend -L +50G /dev/mapper/vgdatos-lvdescargas

Mostrando algo como esto:

Size of logical volume vgdatos/lvdescargas changed from 50.00 GiB to 100.00 GiB

Como se puede ver el volumen logico ha sido ampliado, pero aun no es utilizable, puesto que hay una parte con formato y otra sin formato.

Para unificar esta información y que tenga formato en su totalidad, vamos a hacer lo siguiente:

fsadm -l resize /dev/vgdatos/lvdescargas

Ahora ya podremos hacer un «df -h» y ver que tenemos exactamente los 100GB que necesitamos

/dev/mapper/vgdatos-lvdescargas 100G 33M 100G 1% /descargas

Esperamos que os sea de ayuda.