Linux Servidor linux

Expandindo partição LVM no Ubuntu

Expandindo partição LVM no Ubuntu

Neste artigo ensino como expandir a partição LVM no Ubuntu, caso tenha feito a instalação utilizando a configuração de LVM, por padrão ele divide a partição em 3 partes, sendo /boot como ext2, swap e o “barra” como LVM.

# lsblk -f
NAME                  FSTYPE        MOUNTPOINT
sda
├─sda1                ext2          /boot
└─sda5                LVM2_member 
  ├─ubuntu--vg-root   ext4          /
  └─ubuntu--vg-swap_1 swap          SWAP
sr0

Irei listar as partições utilizando o comando df -h, segui a instalação padrão do Ubuntu com 10 Gigas.

# df -h
Filesystem                   Size  Used Avail Use% Mounted on
udev                         476M     0  476M   0% /dev
/dev/mapper/ubuntu--vg-root  8.1G  1.4G  6.3G  18% /
/dev/sda1                    720M   58M  625M   9% /boot

Nessa instalação eu utilizei 10 Gigas para instalar o Sistema Operacional, porém agora irei aumentar mais 10 Gigas do / “barra”.

Eu estou utilizando o VirtualBox para esse LAB, e adicionei mais um disco de 10 Gigas nessa VM, porém precisei desligar a VM para adicionar mais um disco.

image

Após incluir na VM, liste seus discos com o comando lsblk.

# lsblk
NAME                  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                     8:0    0   10G  0 disk
├─sda1                  8:1    0  731M  0 part /boot
├─sda2                  8:2    0    1K  0 part
└─sda5                  8:5    0  9.3G  0 part
  ├─ubuntu--vg-root   252:0    0  8.3G  0 lvm  /
  └─ubuntu--vg-swap_1 252:1    0  980M  0 lvm  [SWAP]
sdb                     8:16   0   10G  0 disk >> Disco novo
sr0                    11:0    1 1024M  0 rom

Agora iremos listar as partições utilizando o comando fdisk para saber mais detalhes.

# fdisk -l
Disk /dev/sda: 10 GiB, 10737418240 bytes, 20971520 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
Disklabel type: dos
Disk identifier: 0x4a005acd

Device     Boot   Start      End  Sectors  Size Id Type
/dev/sda1  *       2048  1499135  1497088  731M 83 Linux
/dev/sda2       1501182 20969471 19468290  9.3G  5 Extended 
/dev/sda5       1501184 20969471 19468288  9.3G 8e Linux LVM


Disk /dev/sdb: 10 GiB, 10737418240 bytes, 20971520 sectors >> Disco novo.
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 /dev/mapper/ubuntu--vg-root: 8.3 GiB, 8938061824 bytes, 17457152 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 /dev/mapper/ubuntu--vg-swap_1: 980 MiB, 1027604480 bytes, 2007040 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

Iremos utilizar o fdisk novamente só que dessa vez para criar a partição, a partição precisa ser do tipo Linux LVM, o código dela no disk é 8e.

# fdisk /dev/sdb

Welcome to fdisk (util-linux 2.27.1).
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.
Created a new DOS disklabel with disk identifier 0xeca51051.

Command (m for help): p >> exibir a tabela de partição
Disk /dev/sdb: 10 GiB, 10737418240 bytes, 20971520 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
Disklabel type: dos
Disk identifier: 0xeca51051

Command (m for help): n >> n para nova partição
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p >> p para primária
Partition number (1-4, default 1): >> enter
First sector (2048-20971519, default 2048): >> enter
Last sector, +sectors or +size{K,M,G,T,P} (2048-20971519, default 20971519): >> enter

Created a new partition 1 of type 'Linux' and of size 10 GiB.

Command (m for help): t >> t para selecionar o tipo de partição
Selected partition 1
Partition type (type L to list all types): 8e >> 8e é tipo de partição escolhido
Changed type of partition 'Linux' to 'Linux LVM'.

Command (m for help): w >> w para escrever as alterações no disco
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

Execute novamente o comando fdisk para conferir se a partição foi criada:

# fdisk -l

Disk /dev/sdb: 10 GiB, 10737418240 bytes, 20971520 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
Disklabel type: dos
Disk identifier: 0xeca51051

Device     Boot Start      End  Sectors Size Id Type
/dev/sdb1        2048 20971519 20969472  10G 8e Linux LVM

Pronto agora iremos criar um Volume Físico.

# pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created

Utilize o comando pvdisplay para exibir os Volumes Físicos, e repare que o nosso volume estará lá.

# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda5
  VG Name               ubuntu-vg
  PV Size               9.28 GiB / not usable 2.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              2376
  Free PE               0
  Allocated PE          2376
  PV UUID               OZIITK-AI2U-0nFQ-46e1-9ra2-Nuye-nEqJDE

  "/dev/sdb1" is a new physical volume of "10.00 GiB" >> :)
  --- NEW Physical volume ---
  PV Name               /dev/sdb1
  VG Name
  PV Size               10.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               3jzJqt-jS5p-O4XK-YRax-K9gG-VLN3-9s6XQe

Agora iremos estender nosso Grupo de Volume para o Volume Físico que criamos, antes iremos listar os Grupos de Volume criados, com o comando lvs.

# lvs
  LV     VG        Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root   ubuntu-vg -wi-ao----   8.32g
  swap_1 ubuntu-vg -wi-ao---- 980.00m

Repare que o nome do novo Grupo de Volume é o ubuntu-vg, agora vamos estender esse volume group.

# vgextend ubuntu-vg /dev/sdb1
  Volume group "ubuntu-vg" successfully extended

Liste os Volumes Físicos e repare que ele está atribuído ao Grupo de Volume ubuntu-vg, um pouco antes quando executamos esse comando, ele não exibia os detalhes do Volume Físico que adicionamos, agora ele mostra todos os detalhes.

# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda5
  VG Name               ubuntu-vg
  PV Size               9.28 GiB / not usable 2.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              2376
  Free PE               0
  Allocated PE          2376
  PV UUID               OZIITK-AI2U-0nFQ-46e1-9ra2-Nuye-nEqJDE

  --- Physical volume --- 
  PV Name               /dev/sdb1
  VG Name               ubuntu-vg >> disco atribuído ao grupo de volume ubuntu-vg
  PV Size               10.00 GiB / not usable 3.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              2559
  Free PE               255
  Allocated PE          2304
  PV UUID               3jzJqt-jS5p-O4XK-YRax-K9gG-VLN3-9s6XQe

Repare que com o comando vgdisplay, já podemos ver que o nosso ubuntu-vg tem 20 Gigas.

# vgdisplay
  --- Volume group ---
  VG Name               ubuntu-vg
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  4
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               19.28 GiB >> :D
  PE Size               4.00 MiB
  Total PE              4935
  Alloc PE / Size       2376 / 9.28 GiB
  Free  PE / Size       2559 / 10.00 GiB >> Volume Físico criado.
  VG UUID               PyzKqt-XGrn-xSSK-UrHv-3HAl-cTZ5-qHDrYZ

Agora vamos expandir a nossa partição que é o / (barra), iremos aumentar mais 9 Gigas do disco que adicionamos, lembrando que a label que ele colocou é: ubuntu–vg-root.

# lvextend -L +9GB /dev/ubuntu-vg/root
  Size of logical volume ubuntu-vg/root changed from 8.32 GiB (2131 extents) to 17.32 GiB (4435 extents).
  Logical volume root successfully resized.

Agora iremos redimensionar o nosso sistema de arquivos, utilizando o comando resize2fs.

# resize2fs /dev/ubuntu-vg/root
resize2fs 1.42.13 (17-May-2015)
Filesystem at /dev/ubuntu-vg/root is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 2
The filesystem on /dev/ubuntu-vg/root is now 4541440 (4k) blocks long.

Eu iria checar o disco com o comando e2fsck, porém não iremos conseguir porque a partição já está montada e não podemos desmontar pq ela é o nosso barra hehe.

# e2fsck /dev/ubuntu-vg/root
e2fsck 1.42.13 (17-May-2015)
/dev/ubuntu-vg/root is mounted.
e2fsck: Cannot continue, aborting.

Já que não conseguimos chegar a nossa partição, vamos executar o comando df, para saber se o nosso Volume Lógico aumentou.

# df -h
Filesystem                   Size  Used Avail Use% Mounted on
udev                         476M     0  476M   0% /dev
tmpfs                        100M  3.2M   97M   4% /run
/dev/mapper/ubuntu--vg-root   17G  1.4G   15G   9% /
tmpfs                        497M     0  497M   0% /dev/shm
tmpfs                        5.0M     0  5.0M   0% /run/lock
tmpfs                        497M     0  497M   0% /sys/fs/cgroup
/dev/sda1                    720M   58M  625M   9% /boot
tmpfs                        100M     0  100M   0% /run/user/1000

Tchanammm, nosso disco agora está com 17 Gigas e foi aumentado com sucesso! o/

Para saber mais sobre LVM acesse o artigo: Aprenda a utilizar o LVM no Linux.

É isso galera, curta e compartilhe com seus amigos sysadmins hehe
Até a próxima!!!
Abs.

comments powered by Disqus

Assine nossa Newsletter! 🐧

Se una com os assinantes de nossa Newsletter, sempre que tiver postagem nova você será notificado.