Робота з LVM
LVM - це система управління дисковим простором з додатковим ступенем абстракції від фізичного рівня. Вона дозволяє гнучко і ефективно керувати дисковим простором, відмовостійкістю даних, а також допомагає у вирішенні різноманітних завдань з резервного копіювання даних, розгортання систем зберігання для середовищ віртуалізації і так далі.
У цій статті ми розглянемо, як встановити і використовувати LVM в Linux.
Встановлення
ЗазвичайLVM встановлюється разом з операційною системою Linux, але якщо це не так, ви можете встановити його за допомогою менеджера пакунків вашого дистрибутива Linux. Для більшості дистрибутивів команда для встановлення LVM матиме такий вигляд:
Для Debian або Ubuntu:
sudo apt-get install lvm2
Для CentOS, Fedora і RHEL:
sudo yum install lvm2
Створення фізичних томів
Перш ніж створювати логічні томи, необхідно створити фізичні томи (pv). Фізичний том - це віртуальний пристрій, наприклад, жорсткий диск або розділ диска, який LVM використовує для створення логічних томів.
Зауваження: Рекомендується створювати фізичні томи на жорсткому диску без використання розбиття на розділи, оскільки інакше процес динамічної зміни розміру lvm ускладниться у довгостроковій перспективі.
Щоб створити фізичний том, виконайте такі дії:
Створіть фізичний том за допомогою команди pvcreate:
sudo pvcreate /dev/sdb
Де /dev/sdb - шлях до фізичного пристрою.
2. Перевірте створений фізичний том за допомогою команди pvdisplay:
sudo pvdisplay
У результаті ви побачите інформацію про створений фізичний том.
Створення групи фізичних томів
Група фізичних томів (vg) - це логічний контейнер, який може об'єднувати кілька фізичних томів в одну загальну групу. Однак ніщо не заважає використовувати його в межах одного фізичного тому. Щоб створити групу фізичних томів, виконайте такі дії:
1. скористайтеся командою vgcreate для створення групи фізичних томів:
sudo vgcreate vg0 /dev/sdb # либо для нескольких pv sudo vgcreate vg0 /dev/sdb /dev/sdc
Створення логічного тому
Тепер ви можете створювати логічні томи, які можна умовно представити як розділи на жорсткому диску.
1. Створіть логічний том у групі фізичних томів за допомогою команди lvcreate :
sudo lvcreate -n lv0 -L 10G vg0 # Создание логического тома lv0 размером 10 ГБ в группе физических томов vg0
Де -n - назва логічного тому, -L - розмір логічного тому.
2. Перевірте створений логічний том за допомогою команди lvdisplay:
sudo lvdisplay
Ви побачите інформацію про створений логічний том.
3. Створіть файлову систему на логічному томі за допомогою команди mkfs:
sudo mkfs.ext4 /dev/vg0/lv0
4. Створіть точку монтування для нової файлової системи за допомогою команди mkdir:
sudo mkdir /mnt/lv0
5. змонтуйте нову файлову систему до точки монтування за допомогою команди mount:
sudo mount /dev/vg0/lv0 /mnt/lv0
Тепер ви можете використовувати нову файлову систему, розташовану на логічному томі.
Використання LVM
LVM надає багато команд для керування фізичними томами, групами фізичних томів і логічними томами. Нижче наведено деякі з найпоширеніших команд:
- pvcreate: Створює новий фізичний том.
- pvdisplay: Відображає інформацію про фізичні томи.
- vgcreate: Створює нову групу фізичних томів.
- vgextend: Додає фізичний том до групи фізичних томів.
- vgdisplay: Відображає інформацію про групи фізичних томів.
- lvcreate: Створює новий логічний том.
- lvextend: Збільшує розмір логічного тому.
- lvdisplay: Відображає інформацію про логічні томи.
LVM також дозволяє збільшувати розмір фізичних томів, груп фізичних томів і логічних томів під час роботи системи. Для цього існують відповідні команди:
- pvresize: Зміна розміру фізичного тому.
- vgresize: Зміна розміру групи фізичних томів.
- lvresize: Змінює розмір логічного тому.
Виконавши будь-яку з наведених вище команд з параметром --help, ви зможете ознайомитися з додатковими параметрами аргументів команди.
Керування розміром логічного тому:
Наприклад, щоб збільшити розмір логічного тому lv0 у групі фізичних томів vg0 на 5 ГБ, скористайтеся командою:
sudo lvresize -L +5G /dev/vg0/lv0
або весь вільний простір, що залишився на фізичному томі:
sudo lvresize -l +100%FREE /dev/vg0/lv0
Потім ви можете змінити розмір файлової системи на льоту за допомогою команди resize2fs:
sudo resize2fs /dev/vg0/lv0
Знімки LVM
LVM у Linux підтримує механізм знімків, який дозволяє створювати точні копії логічних томів у певний момент часу. Це корисна функція, яка дозволяє зберігати стан даних в певний момент часу і при необхідності відновлювати їх до цього стану.
Технологія створення знімків LVM працює наступним чином: знімок створюється шляхом збереження стану логічного тому в момент часу, коли створюється знімок. Після створення знімка будь-які зміни, що відбуваються в оригінальному логічному томі, зберігаються в додатковому диференціальному дисковому просторі. Це може допомогти при резервному копіюванні і відновленні даних на момент створення знімка.
Давайте розглянемо, як створювати і використовувати механізм створення знімків LVM.
Створення знімка LVM
Створення знімка LVM виконується за допомогою команди lvcreate. Наприклад, для створення знімка логічного тому myvolume у групі томів myvg скористайтеся такою командою:
sudo lvcreate --snapshot --name myvolume_snap --size 1G /dev/myvg/myvolume
Ця команда створить знімок логічного тому myvolume з назвою myvolume_snap і розміром 1 ГБ.
Зауважте, що для створення знімка потрібно вказати його розмір.
Використання знімка LVM
Після створення знімка ви можете використовувати його для виконання різних завдань. Наприклад, ви можете використовувати знімок для відновлення даних або створення резервної копії. Щоб змонтувати знімок у файлову систему, скористайтеся наступною командою:
sudo mount /dev/myvg/myvolume_snap /mnt/snapshot
Тут /mnt/snapshot - це точка монтування, куди буде змонтовано знімок. Після монтування знімка ви можете скопіювати дані з нього або використовувати його для відновлення даних.
Видалення знімка LVM
Після використання знімка його можна видалити. Щоб видалити знімок, скористайтеся командою lvremove. Наприклад, щоб видалити знімок myvolume_snapshot у групі томів myvg, скористайтеся наступною командою:
sudo lvremove /dev/myvg/myvolume_snap
Зауважте, що якщо ви видалите знімок, усі дані, які було змінено після створення знімка, буде втрачено.
Тонкі пули
Тонкий пул - це механізм LVM, який дозволяє створювати логічний том, який використовує лише ту частину фізичних дискових пристроїв, яка фактично містить дані. Це дозволяє зменшити споживання дискового простору і більш ефективно керувати ним. Ця особливість LVM набула найбільшого поширення в системах віртуалізації як зручне і економічне рішення для виділення дискового простору для віртуальних машин і контейнерів. Давайте розглянемо, як створити тонкий пул в LVM.
Створення тонкого пулу LVM
Тонкий пул створюється за допомогою знайомої команди lvcreate. Наприклад, щоб створити тонкий пул mythinpool у групі томів myvg на фізичних томах /dev/sdb і /dev/sdc, скористайтеся наступною командою:
sudo lvcreate -L 50G -T myvg/mythinpool /dev/sdb /dev/sdc
Тут -L вказує розмір тонкого пулу у гігабайтах, а -T вказує на те, що ми створюємо тонкий пул. Ця команда створить тонкий пул mythinpool розміром 50 ГБ.
Створення тонкого тому LVM
Тонкий том - це логічний том, який створюється всередині тонкого пулу. Тонкі томи можна створити за допомогою команди lvcreate. Наприклад, щоб створити тонкий том mythinvolume розміром 10 ГБ у тонкому пулі mythinpool у групі томів myvg, скористайтеся наступною командою:
sudo lvcreate -V 10G -T myvg/mythinpool -n mythinvolume
Тут -V вказує розмір тонкого тому в гігабайтах, а -n - ім'я тонкого тому. Ця команда створить тонкий том mythinvolume розміром 10 ГБ всередині тонкого пулу mythinpool.
Використання тонкого тому LVM
Тонкий том можна використовувати як звичайний логічний том. Наприклад, щоб створити файлову систему ext4 на тонкому томі mythinvolume, скористайтеся наступною командою:
sudo mkfs.ext4 /dev/myvg/mythinvolume
Після створення файлової системи тонкого тому його можна змонтувати і використовувати як звичайний логічний том.
Тонкий пул дозволяє створювати більш гнучкі та ефективні конфігурації сховищ у Linux. Тонкий пул використовується у поєднанні з тонким томом для оптимального використання дискового простору.