Як безболісно збільшити дисковий простір в linux або дивовижна система lvm телеком

З'явилася завдання збільшити обсяг дискового простору на хостинговому сервері. Оскільки в якості панелі управління використовується ISPmanager, монтування нового розділу в окрему папку проблеми б не вирішило. За порадою колег вирішив закликати на допомогу LVM (Logical volume manager).

Управління логічними томами (Logical Volume Management - LVM) існує в Linux, починаючи з версій ядра 2.4v1 і 2.6.9v2.
Що ж таке LVM, Logical volume manager, Управління логічними томами або менеджер логічних томів?
LVM - це додатковий рівень абстракції між звичними логічними / фізичними дисками і файлової системою. Ця система дозволяє нам об'єднувати кілька фізичних дисків, розділів на фізичному диску, рейд масивів в логічний тому на якому ми створюємо файлову систему. Також у нас з'являються можливості швидких бекапів, переміщення файлової системи з, наприклад, двох HDD по 40Гб на один 80Гб без виключення комп'ютера / сервера, збільшення / зменшення розмірів логічного тому на ходу (тут треба зробити застереження про те що файлова система повинна підтримувати ці функції) .
Загалом це дивовижна система яка додає гнучкості і зручності в роботу з накопичувачами даних.

Отже, маємо сервер IBM x3560, два диска вже встановлені і працюють в дзеркалі, операційна система CentOS 5.5. Вимикаємо сервер, встановлюємо ще два диска, об'єднуємо їх в рейд 1. Завантажуємо операційну систему і бачимо що з'явився новий нерозмічену розділ / dev / sdb.

До додавання другого рейд масиву картина була наступна:
Дзеркало видно як / dev / sda. / Dev / mapper / VolGroup01-LogVol00 це /
/ Dev / sda1 це / boot

Невелика ремарка, необхідно щоб boot розділ був поза логічного тому, інакше завантажитися не вийде. Дивимося що нам покаже pvdisplay:

Тут треба сказати що у LVM є три рівні:
  • PV це physical volume. так би мовити фізичний рівень (цілі диски або розділи)
  • VG це volume group. на цьому рівні об'єднуємо PV в групу
  • LV це logical volume. логічний рівень, об'єднання VG в єдиний розділ на якому можна створювати файлову систему.

Бачимо у нас є VG по імені VolGroup01 яка знаходиться на PV / dev / sda2

lvdisplay нам говорить наступне:

LV який нам необхідно буде розширити називається / dev / VolGroup01 / LogVol00

Далі наші дії:
  • Ініціалізіруем новий фізичний диск командою: pvcreate / dev / sdb
  • Додаємо новий фізичний диск до нашої існуючої VG VolGroup1. vgextend VolGroup01 / dev / sdb
  • Розширюємо наш LV на ім'я / dev / VolGroup01 / LogVol00 на кількість загального простору міститься в / dev / sbd. lvextend / dev / VolGroup01 / LogVol00 / dev / sdb

Тепер залишилося змінити розмір файлової системи: resize2fs -p / dev / VolGroup01 / LogVol00 Все, в моєму випадку я збільшив обсяг доступного дискового простору в два рази.

/ Dev / VolGroup01 / LogVol01 в нашому випадку це swap.