Расширяем логический том lvm2

debianeach

Опубликован:  2018-12-17T12:39:11.177453Z

В повседневной жизни мы нередко сталкиваемся с необходимостью обновления оборудования компьютера и изменения его ресурсов и параметров в сторону увеличения. В этой демонстрации я покажу, как можно интегрировать дополнительный жесткий диск на машину с уже установленной и настроенной операционной системой Debian stretch, жесткий диск которой размечен с использованием менеджера логических томов lvm2.

Для этой демонстрации я буду использовать виртуальную машину, на которой установлен и настроен десктоп LXDE, описания всех этапов установки и настройки этой виртуальной машины доступны в моём блоге. Поскольку раздел файловой системы /home моей машины имеет недостаточный, на мой взгляд, размер, я решил добавить этой машине ещё один жесткий диск c 40GiB дискового пространства.

eIYNFONiXn.png

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

sORycl7wmO.png

На снимке экрана выше видно, что в системе появился дополнительный жесткий диск - sdb, который на текущий момент не имеет ни одного раздела и недоступен пользователям системы для использования по назначению. Кроме этого, видно, что жесткий диск компьютера - sda - размечен с использованием менеджера логических томов lvm2, а его логические тома смонтированы и доступны пользователям.

Мне необходимо, чтобы всё пространство дополнительного жесткого диска (40GiB) было доступно в разделе /home, который на текущий момент имеет всего 12.6GiB дискового пространства. Поскольку все мои последующие действия будут направлены на работу с системным разделом /home, логическим томом, на котором этот раздел расположен, и соответствующей группой логических томов, необходимо, чтобы во время выполнения всех манипуляций все логические тома в группе томов были размонтированы, поэтому для выполнения задуманного мне потребуется LiveCD с соответствующим программным обеспечением. Я буду использовать Linux Mint с рабочим столом XFCE4, образ такого диска можно скачать на любом зеркале в сети.

X3gEVBwp1b.png

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

Для справки: запись iso-образа на флэш-накопитель детально описана.

Находясь на рабочем столе Linux Mint, запускаю терминал и получаю права суперпользователя.

54XH0TFv1S.png

В этом терминале я и выполню все необходимые для интеграции дополнительного жесткого диска в раздел /home моей системы действия. Чтобы не захламлять окно терминала, я буду использовать команду reset для очистки терминала после каждой продемонстрированной команды.

Итак, не помешает для начала взглянуть на выхлоп lsblk.

pzPggBsRtL.png

Всё на месте, дополнительный жесткий диск определился также, как и в рабочей системе - sdb. Видно, что все разделы жесткого диска sda не имеют точек монтирования. Первым делом мне необходимо разметить дополнительный жесткий диск sdb, на нём я создам один единственный раздел. Запускаю parted.

parted /dev/sdb

C6R3MazjAY.png

Разметка дополнительного жесткого диска детально описана в отдельной статье, поэтому пошагово делать снимки экрана ещё раз наверно не имеет смысла, операция элементарна. Последовательно выполняю следующие команды в сессии parted.

unit mib
mklabel msdos
mkpart primary 1 -1
set 1 lba off
set 1 lvm on
print
q

В результате мой терминал выглядит следующим образом.

SNVlJIHtyw.png

Теперь, если посмотреть на выхлоп lsblk, можно увидеть, что на диске sdb появился новый раздел sdb1, с которым я продолжу работать далее.

8ux0HGHbLZ.png

Мне нужно создать на этом разделе физический том lvm2, для этого использую команду pvcreate.

pvcreate /dev/sdb1

eKhRzsMHiu.png

Чтобы посмотреть наличие групп томов в моей системе, воспользуюсь командой vgdisplay.

vgdisplay

XVHWsetgrr.png

На снимке экрана выше видно, что в моей системе присутствует группа томов с именем vg_stretch. Эту группу томов необходимо расширить, присоединив к ней новый физический том, который я только что создал. Для этого служит команда vgextend.

vgextend vg_stretch /dev/sdb1

FMAkaM3C43.png

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

lvdisplay

0a5Vd6kBJg.png

На снимке экрана выше видно, что в моей системе присутствуют два логических тома: lv_root и lv_home. По условию задачи логический том lv_home мне необходимо расширить за счёт дискового пространства нового физического тома, который я создал выше и присоединил к группе томов vg_stretch. Это достигается командой lvextend.

lvextend /dev/vg_stretch/lv_home /dev/sdb1

zuLulNpqy5.png

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

e2fsck -f /dev/vg_stretch/lv_home

3OhVgFfX1y.png

Осталось записать изменение размера файловой системы на диск.

resize2fs /dev/vg_stretch/lv_home

iMtfkp98ES.png

Работа с дисками в сессии LiveCD на этом завершена. Перезагружаю компьютер, на этот раз загружаюсь с жесткого диска своей машины, открываю терминал и смотрю на выхлоп команды df.

df -h

lzQaDkadf1.png

После всех трудов общий размер раздела /home моей системы составляет ~52GiB. Поставленная цель достигнута, при этом состав и характер точек монтирования в моей системе никак не изменился, а раздел /home сохранил свою целостность и получил дополнительное дисковое пространство.

Комментарии: