Расширение LVM диска (без изменения его структуры)¶
Примечание
Менеджер логических томов (англ. logical volume manager) — подсистема операционных систем Linux и OS/2, позволяющая использовать разные области одного жёсткого диска и/или области с разных жёстких дисков как один логический том. Реализована с помощью подсистемы device mapper. LVM добавляет уровень абстракции между физическими/логическими дисками (привычными разделами, с которыми работает fdisk и аналогичные программы) и файловой системой. Это достигается путём разбивки изначальных разделов на блоки, либо использования отдельных разделов или блочных устройств (physical volume (pv)) и объединения их в единый виртуальный том, точнее группу томов (volume group (vg)), которая далее разбивается на логические тома (logical volume (lv)). Для файловой системы логический том представлен как обычное блочное устройство, хотя отдельные pv тома могут находиться на разных физических устройствах (и даже сам pv может быть распределён подобно RAID).
Операционная система | Linux (Ubuntu 16.04.6 LTS) |
Файловая система | ext4 |
метод распределения пространства жёсткого диска | LVM |
Исходный размер тома | 5ГБ |
Размер тома после расширения | 10ГБ |
С помощью команды fdisk мы видим, что размер диска со стороны операционной системы (/dev/vda) составляет 10 GiB, а размер раздела с LVM (/dev/vda1) — 5G
fdisk -l /dev/vda Disk /dev/vda: 10 GiB, 10737418240 bytes, 20971520 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0x71473ce9 Device Boot Start End Sectors Size Id Type /dev/vda1 * 2048 10483711 10481664 5G 8e Linux LVM
Теперь произведём ряд операций, в результате которых наш корневой раздел (root) будет занимать всё доступное пространство.
1. Смотрим текущее состояние для корневого раздела (root), перед преобразованием его размер составляет 4.8G
df -h / Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg0-rootfs 4.8G 1.8G 2.8G 40% /
- Расширим раздел vda1 до 10ГБ с помощью ПО parted
- «откроем» диск с помощью команды parted
(parted) print Model: Virtio Block Device (virtblk) Disk /dev/vda: 10.7GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 1049kB 5368MB 5367MB primary boot, lvm
- изменим размер раздела №1 (текущий размер — 5367MB) до максимально возможного. Цифру возьмём из описания диска в предыдущем пункте (10.7GB)
(parted) resizepart 1 End? [5368MB]? 10.7GB
(parted) print Model: Virtio Block Device (virtblk) Disk /dev/vda: 10.7GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 1049kB 10.7GB 10.7GB primary boot, lvm
pvresize /dev/vda1 Physical volume "/dev/vda1" changed 1 physical volume(s) resized / 0 physical volume(s) not resized
lvscan ACTIVE '/dev/vg0/rootfs' [5.00 GiB] inherit
- расширим логический раздел (Logical Volume) до максимально доступного размера. Название раздела возьмём из предыдущего пункта
lvextend /dev/vg0/rootfs -l +100%FREE Size of logical volume vg0/rootfs changed from 5.00 GiB (1279 extents) to 9.96 GiB (2550 extents). Logical volume rootfs successfully resized.
4. Расширим файловую систему до максимально доступного размера (название раздела возьмём из пункта №1).
resize2fs /dev/mapper/vg0-rootfs resize2fs 1.42.13 (17-May-2015) Filesystem at /dev/mapper/vg0-rootfs is mounted on /; on-line resizing required old_desc_blocks = 1, new_desc_blocks = 1 The filesystem on /dev/mapper/vg0-rootfs is now 2611200 (4k) blocks long.
5. Проверяем, что что наши манипуляции увенчались успехом. Для этого посмотрим актуальный размер корневого раздела (root), теперь он равен 9.7G
df -h / Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg0-rootfs 9.7G 1.9G 7.5G 20% /
© Copyright 2016-2023, SIM-Cloud. Обновлено: апр. 21, 2023.
Этот сайт использует cookie.
Оставаясь на сайте, Вы соглашаетесь с размещением файлов cookie и даете согласие на хранение и обработку ваших персональных данных. Подробнее.
Увеличить размер раздела диска в Ubuntu
21.02.2023
itpro
Linux, Ubuntu
комментария 3
Если вы используете виртуальные машины с Ubuntu Linux, скорее всего рано или поздно вы столкнетесь с необходимостью расширения места на виртуальном диске. Установщик Ubuntu по умолчанию предлагает использовать логические LVM тома для развертывания ОС, поэтому мы рассмотрим расширение диска на примере именно LVM.
В первую очередь нужно увеличить размер виртуального диска со стороны вашей системы виртуализации:
После того, как вы расширили диск в ВМ, нужно расширить его в гостевой ОС (в этом примере это Ubuntu 22.04 LTS). Чтобы Ubuntu увидела добавленное место, выполните принудительный рескан дисков с помощью команды:
Для управления разделами используйте утилиту cfdisk:
В данном примере видно, что на диске /dev/sda есть свободное место размером 1 Гб. Выберите раздел, который нужно расширить (/dev/sda3 в этом примере) и выберите в меню Resize.
Чтобы сохранить изменения в разделах диска, выберите в меню Write.
После того, как вы увеличили физический раздел, нужно увеличить размер логического раздела Ubuntu. Проверьте, что у вас используется используются тома LVM:
- Physical Volume (PV) — ваши физические диски /dev/sda , /dev/sdb , и т.д.
- Volume Group (VG) — группы томов, в которые объединены физически диски. Например ubuntu-vg = /dev/sda + /dev/sdb . Также VG можно состоять всего из одного диска.
- Logical Volume (LV) — логический раздел в группе томов. Например, ubuntu-vg/root , ubuntu-vg/home , и т.д.
Проверьте свободное место в группе томов LVM с помощью:
Для расширения раздела LVM нужно сначала увеличить PV (Physical Volume):
Теперь можно увеличить логический том. В этом примере мы расширим том за счет всего доступного пространства:
$ sudo lvextend -l +100%FREE /dev/mapper/ubuntu—vg-ubuntu—lv
Logical volume ubuntu-vg/ubuntu-lv successfully resized
Осталось расширить файловую систему. Для ext2, ext3 и ext4 выполните:
$ sudo resize2fs /dev/mapper/ubuntu—vg-ubuntu—lv
Проверьте свободное место в Linux с помощью команды:
Итак, мы успешно расширили LVM том в Ubuntu.
$ sudo parted
print free
resizepart n
Предыдущая статья Следующая статья
Установка и настройка прокси сервера Squid в Linux
Мониторинг срока регистрации (освобождения) домена в Zabbix
Настройка Wi-Fi точки доступа на Linux
Управление конфигурацией Windows через Ansible