🗃️ Как создать логические тома LVM на Linux

by itisgood

Система хранения данных – один из тех кардинальных компонентов, без которых ваш сервер не может обойтись, и поэтому требует к себе пристального внимания, несмотря ни на что.

Это краткое руководство по внедрению LVM на вашем linux-сервере или рабочей станции.

Благодарим вас за посещение и надеемся, что оно поможет вам в ваших поисках/проектах.

“Неудача – это приправа, которая придает успеху вкус”. – Трумен Капоте

Настройка хранилища LVM в Linux

Наверняка вы уже слышали, а еще лучше использовали LVM.

Технология управления логическими томами (LVM) упрощает управление хранилищем.

LVM виртуализирует хранилище и предлагает системным администраторам более гибкий способ управления дисковым хранилищем по сравнению со старой парадигмой разбиения на разделы.

Управление логическими томами осуществляется путем разделения физических томов (PV) на физические экстенты (PE), которые затем отображаются на логические экстенты (LE).

После этого логические экстенты объединяются в группы томов (VG).

Как вы можете догадаться, эти порожденные группы томов объединяются в логические тома (LV), которые выступают в качестве вышеупомянутых разделов виртуального диска.

LVM позволяет очень просто изменять размер и перемещать тома хранения, когда это необходимо.

Зная это, давайте теперь погрузимся в настройку LVM.

Я буду использовать флэш-накопитель, но процедура аналогична для любого другого накопителя или устройства (жесткого диска и т.д.).

Шаг 1: Определите устройство

Выведите список доступных устройств и разделов с помощью fdisk.

Как видно из вывода, существует физическое устройство, обозначенное /dev/sdb.

$ sudo fdisk -l 
Disk /dev/sda: 119.2 GiB, 128035676160 bytes, 250069680 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: 0xa3bc85b8

Device     Boot    Start       End   Sectors  Size Id Type
/dev/sda1       62517248 250067789 187550542 89.4G 83 Linux
/dev/sda2           2048  62517247  62515200 29.8G 83 Linux

Partition table entries are not in disk order.

Disk /dev/sdb: 14.9 GiB, 15938355200 bytes, 31129600 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: 0x2a4e70c2

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb1        8192 31129599 31121408 14.9G  c W95 FAT32 (LBA)

Шаг 2: Создание раздела для устройства LVM

Подготовьте физическое устройство, отформатировав его с помощью fdisk, parted или gdisk.

Мы будем использовать fdisk.

Сначала мы удалим существующие разделы и создадим новые.

$ sudo fdisk /dev/sdb                                                                                  
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): n
Partition type
   p   primary (2 primary, 0 extended, 2 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): 
First sector (2048-31129599, default 2048): 
Last sector, +sectors or +size{K,M,G,T,P} (2048-31129599, default 31129599): +7G

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

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): n
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 
First sector (14682112-31129599, default 14682112): 
Last sector, +sectors or +size{K,M,G,T,P} (14682112-31129599, default 31129599): 

Created a new partition 2 of type 'Linux' and of size 7.9 GiB.

Command (m for help): t
Partition number (1,2, default 2): 2
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.
Failed to remove partition 1 from system: Device or resource busy
Failed to add partition 1 to system: Device or resource busy
Failed to add partition 2 to system: Device or resource busy

The kernel still uses the old partitions. The new table will be used at the next reboot. 
Syncing disks.

Подтвердите наличие разделов LVM, набрав fdisk -l следующим образом:

$ sudo fdisk -l 
[sudo] password for penchant: 
Disk /dev/sda: 119.2 GiB, 128035676160 bytes, 250069680 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: 0xa3bc85b8

Device     Boot    Start       End   Sectors  Size Id Type
/dev/sda1       62517248 250067789 187550542 89.4G 83 Linux
/dev/sda2           2048  62517247  62515200 29.8G 83 Linux

Partition table entries are not in disk order.


Disk /dev/sdb: 14.9 GiB, 15938355200 bytes, 31129600 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: 0x2a4e70c2

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb1           2048 14682111 14680064    7G 8e Linux LVM
/dev/sdb2       14682112 31129599 16447488  7.9G 8e Linux LVM


Partition table entries are not in disk order.

Шаг 3: Создание физического тома

Создание физических томов с помощью pvcreate

$ sudo pvcreate /dev/sdb1 /dev/sdb2
  Physical volume "/dev/sdb1" successfully created.
  Physical volume "/dev/sdb2" successfully created.

Подтвердите наличие физических томов с помощью команды pvdisplay

$ sudo pvdisplay
  --- Physical volume ---
  PV Name               /dev/sdb1
  VG Name               tech
  PV Size               7.00 GiB / not usable 4.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              1791
  Free PE               214
  Allocated PE          1577
  PV UUID               cGnGfI-oVG7-9CcY-kdmK-aR4R-iZY9-O9gD0g
   
  --- Physical volume ---
  PV Name               /dev/sdb2
  VG Name               tech
  PV Size               7.84 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              2007
  Free PE               0
  Allocated PE          2007
  PV UUID               UvewNB-Z2d1-T3L1-c92C-rOLa-lcrg-19zuPk

Шаг 4: Создайте группу томов

Создайте группу томов с помощью vgcreate с выбранным вами именем.

Я собираюсь использовать ‘tech’.

$ sudo vgcreate tech /dev/sdb1 /dev/sdb2                                                                      
  Volume group "tech" successfully created

Шаг 5: Создание логического тома

Создайте логический том с именем и размером по вашему выбору с помощью lvcreate, используя некоторые опции и переключатели, как показано ниже.

  • Опция -n используется для указания имени логического тома.
  • Опция -L указывает размер. Он может быть в MiB для мегабайтов или GiB для гигабайтов.
$ sudo lvcreate -n part1 -L 14GiB tech
  Logical volume "part1" created.

После выполнения вышеуказанной команды будет создано устройство под названием /dev/tech/part1.

Вы можете подтвердить это, вызвав команду lvdisplay.

Однако это устройство не имеет файловой системы.

$ sudo lvdisplay
  --- Logical volume ---
  LV Path                /dev/tech/part1 
  LV Name                part1
  VG Name                tech
  LV UUID                O1qtcJ-dDAj-gPoL-nZn0-VUMs-rVwe-f31OHq
  LV Write Access        read/write
  LV Creation host, time computing-pc, 2018-10-14 00:39:25 +0300
  LV Status              available
  # open                 0
  LV Size                14.00 GiB
  Current LE             3584
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:0

Вы также можете просмотреть группы томов с помощью vgdisplay

Шаг 6: Создание файловой системы на логическом томе

Загрузите в созданный логический том файловую систему по своему выбору.

Давайте загрузим файловую систему xfs.

Вы можете загрузить ext3, ext4, brtfs и другие по своему усмотрению.

$ sudo mkfs -t xfs /dev/tech/part1
meta-data=/dev/tech/part1        isize=512    agcount=4, agsize=917504 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=0
data     =                       bsize=4096   blocks=3670016, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

После этого мы успешно создали логический том /dev/tech/part1 с файловой системой xfs.

Спасибо, ребята, и спасибо, что посетили наш сайт.

Оставайтесь с нами и следите за новыми руководствами и учебниками.

см. также:

 

You may also like

Leave a Comment