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