Шпаргалка по управлению разделами LVM

Гугль располагает сотнями отличных статей, содержащих теорию о Linux LVM (Linux Volume Manager) — встроенной системе управления логическими дисками. В этой статье собран «карманный» набор команд для решения типовых задач.

На приведенной схеме наглядно изображена структура LVM

Посмотреть информацию о существующих физических разделах (PV), группах разделов (VG) и логических разделов (LV)  можно с помощью команд

$ pvscan
$ vgscan
$ lvscan

Находим физический диск (в моем случае это будет sdc — свежедобавленный диск без разделов)

$ ls -1 /dev | grep sd
sda
sda1
sda2
sdb
sdb1
sdc

Посмотреть информацию о разделе можно с помощью команды

$ fdisk -l /dev/sdc

Создаем раздел

$ pvcreate /dev/sdc
Physical volume "/dev/sdc" successfully created.
$ dd if=/dev/zero of=/dev/sdc bs=1k count=1
  1+0 записей получено
  1+0 записей отправлено
скопировано 1024 байта (1,0 kB), 0,00115763 c, 885 kB/c
$ blockdev --rereadpt /dev/sdc
$ fdisk /dev/sdc

В fdisk`е жмем n для создания нового раздела, затем p, чтобы сделать его primary. Номер раздела — 1, первый и последний сектор оставляем по умолчанию (если хотим использовать все пространство диска). Для выхода с записью изменений нажимаем w. Создастся раздел sdc1, который займет все свободное пространство sdc. Проверить можно с помощью команды:

$ ls -1 /dev | grep sdc
sdc
sdc1

Создаем группу томов (если добавляем несколько разделов — пишем их через пробел)

$ vgcreate vg1 /dev/sdc1

или добавляем к существующей группе томов

$ vgextend vg0 /dev/sdc1

и проверяем

$ vgscan
Reading volume groups from cache.
Found volume group "vg1" using metadata type lvm2

Добавим новый раздел swap

$ lvcreate -L500M -n new_swap vg1
Logical volume "new_swap" created.
$ mkswap /dev/vg1/new_swap 
Setting up swapspace version 1, size = 511996 KiB
без метки, UUID=b64aae09-ec70-4b5a-b4e2-ba0fe39ec1df
$ swapon /dev/vg1/new_swap

Теперь проверим, подцепился ли новый swap раздел

$ swapon -s

И добавим его в /etc/fstab

/dev/vg1/new_swap   swap   swap   defaults   0 0

Создадим новый раздел и смонтируем его в папку /share

$ cd /
$ mkdir /share
$ lvcreate -L1G -n lv_share vg1
  Logical volume "lv_share" created.
$ mke2fs /dev/vg1/lv_share
...
Allocating group tables: done                            
Writing inode tables: done                            
Writing superblocks and filesystem accounting information: done
$ mount /dev/vg1/lv_share /share

Проверим, что новый раздел смонтировался

$ df -h | grep lv_share
/dev/mapper/vg1-lv_share  1008M         1,3M  956M            1% /share

Теперь выясним UUID раздела и добавим его в fstab

$ blkid | grep lv_share
/dev/mapper/vg1-lv_share: UUID="4295775f-672f-4fd4-a1ff-ef3103d82fa8" TYPE="ext2" 
$ vi /etc/fstab
...
UUID=4295775f-672f-4fd4-a1ff-ef3103d82fa8   /share   ext2   defaults   0 0

Изменить размер логического диска можно с помощью команд (предварительно отмонтировать). После внесения изменений необходимо использовать команду resize2fs!

$ lvextend -L+500M /dev/vg1/lv_share
Size of logical volume vg1/lv_share changed from 1,00 GiB (256 extents) to 1,49 GiB (381 extents).
Logical volume vg1/lv_share successfully resized.
$ lvreduce -L700M /dev/vg1/lv_share 
  WARNING: Reducing active and open logical volume to 700,00 MiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce vg1/lv_share? [y/n]: y
  Size of logical volume vg1/lv_share changed from 1,49 GiB (381 extents) to 700,00 MiB (175 extents).
  Logical volume vg1/lv_share successfully resized.
$ lvresize -r -L2G /dev/vg1/lv_share 
...
Resizing the filesystem on /dev/mapper/vg1-lv_share to 524288 (4k) blocks.
The filesystem on /dev/mapper/vg1-lv_share is now 524288 blocks long.

Удаление логических томов (предварительно удалить их из fstab)

$ lvremove /dev/vg1/new_swap 
Do you really want to remove active logical volume vg1/new_swap? [y/n]: y
Logical volume "new_swap" successfully removed

Сменить тип раздела на Linux LVM можно с помощью fdisk

$ fdisk /dev/sdc
Command: t
Selected partition: 1
Hex code (type L to list codes): 8e
Command: w
The partition table has been altered!

Оставьте ответ

Ваш адрес email не будет опубликован.