Увеличить размер раздела диска в Ubuntu

21.02.2023

itpro

Linux, Ubuntu

комментариев 6
Если вы используете виртуальные машины с Ubuntu Linux, скорее всего рано или поздно вы столкнетесь с необходимостью расширения места на виртуальном диске. Установщик Ubuntu по умолчанию предлагает использовать логические LVM тома для развертывания ОС, поэтому мы рассмотрим расширение диска на примере именно LVM.
В первую очередь нужно увеличить размер виртуального диска со стороны вашей системы виртуализации:
Как увеличить размер виртуального диска в различных системах виртуализации:
После того, как вы расширили диск в ВМ, нужно расширить его в гостевой ОС (в этом примере это Ubuntu 22.04 LTS). Чтобы Ubuntu увидела добавленное место, выполните принудительный рескан дисков с помощью команды:
Для управления разделами используйте утилиту cfdisk:
В данном примере видно, что на диске /dev/sda есть свободное место размером 1 Гб. Выберите раздел, который нужно расширить (/dev/sda3 в этом примере) и выберите в меню Resize.
Чтобы сохранить изменения в разделах диска, выберите в меню Write.

Закройте утилиту cfdisk.
После того, как вы увеличили физический раздел, нужно увеличить размер логического раздела Ubuntu. Проверьте, что у вас используется используются тома LVM:

Вкратце напомним основные концепции 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 pvresize /dev/sda3
Теперь можно увеличить логический том. В этом примере мы расширим том за счет всего доступного пространства:
$ 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.
Если у вас не используются LVM тома, воспользуйтесь утилитой parted для увеличения раздела в Linux:
$ sudo parted
print free
resizepart n
Расширение диска в Windows описано здесь.
Предыдущая статья Следующая статья
Читайте далее в разделе Linux Ubuntu



Установка и настройка прокси сервера Squid в Linux
Мониторинг срока регистрации (освобождения) домена в Zabbix
Управление конфигурацией Windows через Ansible
Настройка Wi-Fi точки доступа на Linux
Расширение диска в Linux (Debian, CentOS, Ubuntu)
Важно! До внесения изменений, обязательно сделайте резервную копию (backup) всех данных сервера. Любые манипуляции с разделами несут в себе риск потери данных.
Расширение будет выполнено без потери данных. Это такая «хитрая техника»: существующий раздел удаляется, а на его месте создается новый, большего размера.
В нашем примере устройство называется vda и находится в каталоге /dev
- Необходимо узнать название устройства жесткого диска который мы хотим расширить. Делается это командой fdisk -l
- Чтобы увеличить размер раздела (партиции, слайса) на диске, нам необходимо выполнить: fdisk /dev/vda

- Затем внутри командной строки приложения fdisk выполнить p (print), чтобы увидеть таблицу разделов на диске.

Смотрите мощные готовые конфигурации серверов SIM-Networks
В нашем примере раздел один. Называется /dev/vda1 и имеет объем 5ГБ. Сам же жесткий диск имеет объем 10ГБ. Давайте расширим /dev/vda1 до 10ГБ.
- Выполним d для удаления существующего раздела. Затем n – для создания нового, p – для primary, 1 – это номер раздела; и укажем начало и конец раздела в секторах. Начальный сектор должен соответствовать начальному сектору раздела, который был удален. На скриншоте видно, что это 2048. Последний сектор раздела выбираем максимально возможным. В нашем случае fdisk предлагает нам 20971519. Его и введем.

- Еще раз p – чтобы убедиться, что раздел теперь увеличился до необходимого нам размера. И w – для записи и выхода из fdisk.

После этого мы получим предупреждение, что устройство подмонтировано и суперблок недоступен, и что объем раздела будет изменен после перезапуска ОС.
- Перезагружаем ОС — reboot
- После перезагрузки нам необходимо расширить ФС на весь раздел. Сделаем это командой resize2fs /dev/vda1

- Далее, df -h – чтобы удостовериться, что все получилось.
Увеличение дискового пространства на Ubuntu 18.04
При работе с облаком иногда возникают ситуации, когда не хватает свободного дискового пространства. Чтобы увеличить объем заходим в панель администратора и вручную прописываем новый размер диска. Теперь переходим к настройкам сервера для добавления объема в конфигурацию. Ниже приведена инструкция со скриншотами на примере сервера Ubuntu 18.04.
Как увеличить размер дискового пространства
1. Подключаемся к Ubuntu Server под именем суперпользователя (root) и проверяем текущий размер дискового пространства.
echo 1 > /sys/block/sda/device/rescan
Утилита запросит конфигурацию сервера и определит изменения. В нашем случае она транслирует Ubuntu информацию о новом размере дискового пространства.
2. Воспользуемся встроенной программой parted – введем её в терминал. Отобразим список разделов, используя ключ p:
На мониторе появится следующее:

Скриншот №1. Пример.
Красным выделены пункты, которые запоминаем или записываем. Первая строка отображает количество гигабайт, которые доступны на текущем разделе.
Вторая – текущий размер диска, объем которого будет увеличен. Его легко определить по метке LVM.
3. Информация собрана, запускаем процедуру слияния, используя следующий синтаксис:
(parted) resizepart 2
Где «2» означает номер тома, на котором происходит изменение дискового пространства:
![]()
Скриншот №2. Изменяем размер.
Утилита уточнит какое значение добавить. В квадратных скобках указан текущий размер раздела. Вводим новое значение – просто добавляем к числу требуемый объем.
В нашем примере выглядит так: 64.4 + 20 = 84.4 Gb
Выходим из приложения parted командой quit.
(parted) quit
4. После закрытия на экране появится сообщение о необходимости обновить информацию:

Скриншот №3. Информационный текст.
Вручную транслируем операционной системе информацию об изменениях. Вводим:
pvresize /dev/sda2
, где /dev/sda2 – номер устройства и раздела, на котором произошли изменения.
5. Меняем значение тома командой:
lvextend -r -l +100%FREE /dev/mapper/vgroup1-root
Добавление дискового пространства прошло успешно, но, дабы убедиться, проверим результат.
В терминале набираем
На мониторе отобразится информация о внесенных изменениях.
Как быстро увеличить размер раздела диска на сервере
Всем привет! Недавно столкнулся с простой на первый взгляд задачей — увеличить «на горячую» размер диска на сервере Linux.
Описание задачи
Есть сервер в облаке. В моем случае, это Google Cloud — Compute Engine. Операционная система — Ubuntu, файловая система ext4 (подойдет для всех ext). Сейчас подключен диск размером 30 Гб. База растет, файлы пухнут, поэтому нужно увеличить размер диска, допустим, до 50 Гб. При этом мы ничего не отключаем, ничего не перезагружаем.
Внимание! Перед тем как начать, делаем бекап всей важной информации!
1. Для начала, проверим, сколько у нас всего свободного пространства. В консоли Linux пишем:
df -h

Простыми словами, у меня 30 Гб всего и 7.9 Гб сейчас свободно. Нужно увеличить.
2. Дальше я иду и через консоль своего хостера подключаю еще немного Гб. В Google Cloud это делается легко, без перезагрузки. Захожу в Compute Engine -> Диски -> Выбираю диск своего сервера — ему и поменяем размер:

Захожу внутрь, нажимаю «Редактировать» и увеличиваю размер диска до нужных мне размеров (в моем случае, до 50 Гб).
3. Итак, теперь у нас 50 Гб. Проверим это на сервере командой:
sudo fdisk -l

Видим свои новые 50 Гб, но пока использовать мы можем только 30 Гб.
4. Теперь удалим текущий раздел диска на 30 Гб, создадим новый на 50 Гб. У вас может быть несколько разделов. Возможно, вам нужно будет создать и несколько новых разделов. Для этой операции будем использовать программу fdisk, которая позволяет управлять разделами жесткого диска. Также важно понимать, что такое разделы диска и для чего они нужны — читаем тут. Для запуска программы fdisk используем команду:
sudo fdisk /dev/sda
5. Внутри интерактивного режима программы fdisk выполняем несколько операций.

Команда выводит список наших текущих разделов. В моем случае один раздел на 30 Гб и еще 20 Гб в свободном плавании, если так можно сказать.
6. Затем вбиваем:

Удаляем текущий раздел для того, чтобы создать новый на все 50 Гб. Перед операцией еще раз проверяем, сделали ли мы бекап важной информации!
7. Далее указываем программе:

Команда создает новый раздел. Все параметры стоит устанавливать по умолчанию — можно просто нажимать Enter. Если же у вас какой-то особый случай, то указываете свои параметры. Как видно из скриншота, я создал раздел на 50 Гб — то, что мне нужно.
8. В итоге указываю программе:

Эта команда записывает изменения и выходит из fdisk. Не пугаемся, что чтение таблицы разделов не удалось. Следующая команда поможет это исправить. Осталось совсем чуть-чуть.
9. Мы вышли из fdisk и вернулись в основную Linux — строку. Далее вбиваем, как нам посоветовали ранее:
sudo partprobe /dev/sda
Если все прошло успешно, то вы не увидите никакого сообщения. Если у вас не установлена программа partprobe, то установите ее. Именно partprobe обновит таблицы разделов, что позволит нам расширить раздел до 50 Гб в режиме онлайн. Идем дальше.
Подсказка! Установить partprobe можно вот так:
apt-get install partprobe
10. Теперь осталось переопределить размер раздела с помощью программы resize2fs. Она сделает это в режиме онлайн — у меня даже в этот момент скрипты работали и писали на диск.
Программа resize2fs перезапишет метаданные файловой системы. Для этого используем следующую команду:
sudo resize2fs /dev/sda1

Здесь sda1 — это имя вашего раздела. В большинстве случаев, это sda1, но возможны и исключения. Будьте внимательны. В итоге программа изменила нам размер раздела. Думаю, что это успех.
11. Теперь давайте убедимся, что размер раздела изменился и теперь у нас 50 Гб. Для это повторим самую первую команду:
df -h