Система хранения данных – один из тех кардинальных компонентов, без которых ваш сервер не может обойтись, и поэтому требует к себе пристального внимания, несмотря ни на что.
Это краткое руководство по внедрению 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.
Спасибо, ребята, и спасибо, что посетили наш сайт.
Оставайтесь с нами и следите за новыми руководствами и учебниками.
см. также:
- ⌨ Как восстановить удаленный логический том (LV) в LVM
- 🐧 Как активировать физический том «SUSPENDED» LVM
- 🔕 Как добавить физический диск в группу томов для расширения логического тома с помощью lvm
- Настройте LVM и создайте логический том
- Как сжать раздел Linux, используемый LVM
- LVM VG с ошибкой контрольной суммы
- 🗃️ Примеры команд vgextend на Linux
- 🗃️ Как смонтировать каталог хоста внутри контейнера LXD