Добавление нового диска, LVM, Ubuntu

Автор: | 4 декабря 2022

Несколь­ко лет назад для добав­ле­ния ново­го дис­ка в Федо­ру и маун­та его в отдель­ную пап­ку я пля­сал с буб­ном несколь­ко часов. Сей­час все немно­го упро­сти­лось.

Доба­вить отдель­ный диск, сде­лать отдель­ную точ­ку мон­ти­ро­ва­ния и при­ма­пить туда этот диск — сей­час это 5 команд и все гото­во. Мне было инте­рес­но рас­ши­рить LV (Logical Volume), на кото­ром уже уста­нов­ле­на Ubuntu 22.04 на лету, не пере­гру­жая систе­му. Вот как это дела­ет­ся.

Сна­ча­ла тер­ми­ны:

Volume Group (VG) — это высо­ко­уров­не­вый кон­тей­нер, содер­жа­щий один или несколь­ко логи­че­ских и физи­че­ских томов.

Physical Volume (PV) — пред­став­ля­ет собой запо­ми­на­ю­щее устрой­ство, такое как диск или дру­гой носи­тель дан­ных.

Logical Volume (LV) — экви­ва­лен­тен раз­де­лу дис­ка и, как и раз­дел дис­ка, может содер­жать фай­ло­вую систе­му.

Physical Extent (PE) — Каж­дый физи­че­ский объ­ем (PV) делит­ся на бло­ки оди­на­ко­во­го раз­ме­ра, извест­ные как physical extents.

Теперь прак­ти­ка.

Смот­рим что у нас есть:

vgdisplay
Наш Volume Group

У нас есть Volume Group с име­нем ubuntu-vg, с раз­ме­ром physical extent рав­ным 4.00MiB и в общей слож­но­сти име­ет­ся око­ло 930 Гб для логи­че­ских томов (Logical Volume).

Смот­рим име­ю­щи­е­ся LV

lvdisplay
Име­ю­щи­е­ся Logical Volume

Теперь нуж­но понять на каких физи­че­ских устрой­ствах у нас рас­по­ло­жен этот Logical Volume

pvdisplay
Физи­че­ские устрой­ства

Этой инфор­ма­ции доста­точ­но, добав­ля­ем и рас­ши­ря­ем. У меня остал­ся диск на 4 Тб, кото­рый неко­то­рое вре­мя исполь­зо­вал­ся для видео­ар­хи­вов в Windows. Я его под­клю­чил. И теперь сно­ва выпол­ня­ем коман­ду:

pvdisplay
Новый диск

Да, если на дис­ке оста­лась хоть какая-то фай­ло­вая систе­ма или раз­де­лы — луч­ше сра­зу уда­лить. Ина­че полу­чим ошиб­ку типа ‘Cannot use /dev/sdb: device is partitioned’. Нуж­но выпол­нить коман­ду fdisk /dev/sdb , затем набрать коман­ду ‘d’ (delete) и после это­го коман­ду ‘w’ (write).

Теперь про­бу­ем пере­ве­сти диск в режим physical volume:

pvcreate /dev/sdb

Если в ответ полу­чи­ли ошиб­ку, что то типа ‘Device /dev/sdb excluded by a filter’ или опять же ‘Cannot use /dev/sdb: device is partitioned’ — нуж­но вычи­стить диск коман­дой:

wipefs -all /dev/sdb

В ответ полу­чим:

/dev/sdb: 8 bytes were erased at offset 0x00000200 (gpt): 45 46 49 20 50 41 52 54
/dev/sdb: 8 bytes were erased at offset 0x3a3817d5e00 (gpt): 45 46 49 20 50 41 52 54
/dev/sdb: 2 bytes were erased at offset 0x000001fe (PMBR): 55 aa
/dev/sdb: calling ioctl to re-read partition table: Success

И теперь сно­ва

pvcreate /dev/sdb

Полу­чим сооб­ще­ние:

Physical volume "/dev/sdb" successfully created.

Теперь смот­рим что полу­чи­лось:

pvdisplay
Доба­ви­ли диск

Physical volume создан, нуж­но доба­вить его в нашу груп­пу — ubuntu-vg , дела­ет­ся это коман­дой:

vgextend ubuntu-vg /dev/sdb

В ответ полу­чим:

Volume group "ubuntu-vg" successfully extended

Доба­ви­ли в груп­пу и теперь оста­лось рас­ши­рить на него наш Logical Volume. Я для при­ме­ра рас­ши­рю на все име­ю­щи­е­ся 3.6 Тб, дела­ет­ся это коман­дой:

lvextend -L+3.6T /dev/ubuntu-vg/ubuntu-lv

Немно­го пого­дя в ответ полу­чим:

Rounding size to boundary between physical extents: 3.60 TiB.
Size of logical volume ubuntu-vg/ubuntu-lv changed from 929.00 GiB (237824 extents) to <4.51 TiB (1181543 extents).
Logical volume ubuntu-vg/ubuntu-lv successfully resized.

Теперь у нас ста­ло на 4 Тб боль­ше места. И это заня­ло все­го несколь­ко минут. Систе­ма спо­кой­но про­дол­жа­ла рабо­тать. После это­го я лишь хотел пере­гру­зить желе­зо пол­но­стью и посмот­реть как систе­ма загру­зит­ся.

Все полу­чи­лось

Всем добра!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

*