как расширить разделы в linux
Расширение диска или раздела Linux
В инструкции рассмотрены сценарии расширения дискового пространства разделов в Linux без потери информации.
Принцип увеличения диска:
В зависимости от типа раздела и файловой системы, действия различаются.
Любая работа с диском несет риск потери информации. Перед началом работ убедитесь в наличие резервных копий ценных данных.
Шаг 1. Расширение раздела
Обычные тома
Допустим, есть диск /dev/sdb и раздел /dev/sdb2, который нужно увеличить.
Сначала необходимо отмонтировать раздел:
В случае работы с корневой директорией, отмонтировать ее не получиться. В таком случае необходимо загрузить компьютер с LiveCD.
Подключаемся утилитой fdisk к /dev/sdb:
Если мы работаем с разделом более чем 2Тб, используем утилиту parted.
Смотрим номера разделов:
Удаляем раздел (не переживайте — все данные сохраняются):
* в моем примере, раздел для удаления на второй позиции.
Создаем новый раздел:
На запрос начального и конечного секторов просто нажимаем Enter.
Если раздел был загрузочный, добавляем соответствующий флаг:
Еще раз проверяем, что получилось:
LVM-тома расширяются на лету, даже для корневых разделов. В данном примере, работаем с /dev/sda.
Открываем диск утилитой fdisk:
* напомню, что при работе с диском 2Тб и более, следует использовать утилиту parted.
Создаем еще один раздел:
Номер раздела оставляем тот, который предлагает система (просто нажимаем Enter).
Первый и последний сектора также оставляем по умолчанию для использования всего дискового пространства (еще два раза Enter).
Задаем тип раздела:
Выбираем номер раздела (в моем примере создавался раздел 3):
Командой L можно посмотреть список всех типов, но нас интересует конкретный — LVM (8e):
Проинформируем систему, что в таблице разделов произошли изменения:
Создаем физический том из нового раздела:
Смотрим наши Volume Group и для нужного добавляем созданный том:
vgextend vg_centos /dev/sda3
* в моем примере группа томов LVM называется vg_centos
Смотрим LVM-разделы и расширяем пространства для нужного:
* данная команда расширяем LVM-раздел /dev/vg_centos/lv_root, используя все свободное пространство (100%FREE).
Шаг 2. Изменение размера для файловой системы
После того, как на предыдущем шаге мы расширили раздел, система по-прежнему будет видеть старый по объему диск. Чтобы это исправить, необходимо выполнить команду по изменению размера файловой системы. В зависимости от последней, команды различаются.
Посмотреть файловую систему:
ext2/ext3/ext4:
Reiserfs:
* обратите внимание, что в данных примерах используются различные устройства.
Если раздел был отмонтирован, монтируем его, например:
Проверяем, что настройки применились:
Увеличение разделов с Gparted
Если работы выполняются на системе с графическим интерфейсом или есть возможность перезагрузить сервер и загрузиться с LiveCD, можно воспользоваться простым средством — утилитой Gparted, которая позволяем менять размер разделов мышкой.
В открывшемся окне с помощью мышки или форм меняем размер раздела:
Нажимаем кнопку Resize/Move.
Проверяем изменения в окне программы и сохраняем настройки кнопкой «Apply All Operations»:
Увеличение раздела диска в Linux на лету
Для расширения раздела без потери данных в Linux нам понадобятся утилиты parted и resize2fs. Они должны быть в любом дистрибутиве по умолчанию. В Debian они есть. Если нет, то устанавливаем.
Сам процесс ресайза раздела прост:
При этом все данные останутся на месте.
Инструкция по изменению раздела
Расширяем раздел в панели управления VDS или Proxmox
Подразумевается, что в панели управления Вы уже расширили пространство жесткого диска и теперь готовы сделать это «программно». Дополнительные объяснения здесь лишние.
Размечаем раздел
Проверяем какой размер раздела «виден» в ОС и как называется раздел:
Из примера видно, что существует жесткий диск /dev/vda уже размером 20GB. На нем есть раздел /dev/vda1, который пока занимает размер в 5GB. Именно эту разницу мы и должны исправить.
Подключаемся к жесткому диску утилитой parted, указывая жесткий диск:
Узнаем каким номером утилита parted обозначила нужный нам раздел:
В примере нужный нам раздел обозначается 1.
Расширяем раздел 1 до 20.5GB (это весь доступный размер):
Выходим из утилиты parted:
На этом этап новой разметки раздела диска закончен.
Физически изменяем размер
Запускаем последнюю команду для применения всех наших действий:
После этого нужно перезапустить наш сервер и пользоваться увеличенным размером диска.
Комментарии
Нет комментариев к данной статье.
Оставить свой комментарий
Для того, чтобы оставить комментарий, необходимо авторизоваться.
Как изменить размер раздела Linux
Изменение размеров логических томов в Linux осуществляется сложнее, нежели в Windows, что связано с особенностями использования консольных команд и доступных графических приложений. Однако эта задача под силу любому пользователю, и приведенные далее инструкции помогут разобраться с тем, как выполнить ее быстро.
Работа с разделами в GParted
Не все юзеры Linux предпочитают использовать терминал, когда можно обойтись без него. К тому же новички в этой операционной системе не особо желают разбираться с активацией сложных команд. Поэтому в качестве первого варианта предлагаю ознакомиться с использованием программы GParted, которая представляет собой полноценную систему управления дисками.
GParted по умолчанию установлена в большинстве популярных дистрибутивов и их оболочках. Однако если при запуске окажется, что она отсутствует, используйте менеджер приложений или пользовательские репозитории для стандартной процедуры инсталляции. После этого приступайте к выполнению следующей инструкции.
Если все пространство уже распределено по разделам, учитывайте, что сначала его придется вернуть к нераспределенному, сжав один или несколько логических томов. Затем свободные мегабайты уже можно будет отнести к новому тому, расширив его.
Меняем размер разделов диска с помощью fdisk
Более гибкий, но сложный вариант изменения размера диска в Linux подразумевает использование консольной утилиты fdisk. Для выполнения расширения тома на все свободное пространство понадобится выполнить более десятка разных действий, но на все про все уйдет не больше 10 минут.
Для ext2/ext3/ext4 :
Reiserfs :
В командах номера разделов указаны в качестве примеров, вы же заменяете их на свои. Еще оставлю пример команды для монтирования диска, если ранее он был отключен:
Сделать это нужно уже после внесения всех изменений.
Для уменьшения размера раздела используйте последовательность команд:
После ввода последней снова используйте последовательную активацию букв так, как это было показано в предыдущей инструкции, чтобы создать новый раздел. Кроме того, не забудьте смонтировать его обратно!
Как быстро увеличить размер раздела диска на сервере
Всем привет! Недавно столкнулся с простой на первый взгляд задачей — увеличить «на горячую» размер диска на сервере Linux.
Описание задачи
Есть сервер в облаке. В моем случае, это Google Cloud — Compute Engine. Операционная система — Ubuntu, файловая система ext4 (подойдет для всех ext). Сейчас подключен диск размером 30 Гб. База растет, файлы пухнут, поэтому нужно увеличить размер диска, допустим, до 50 Гб. При этом мы ничего не отключаем, ничего не перезагружаем.
Внимание! Перед тем как начать, делаем бекап всей важной информации!
1. Для начала, проверим, сколько у нас всего свободного пространства. В консоли Linux пишем:
Простыми словами, у меня 30 Гб всего и 7.9 Гб сейчас свободно. Нужно увеличить.
Захожу внутрь, нажимаю «Редактировать» и увеличиваю размер диска до нужных мне размеров (в моем случае, до 50 Гб).
3. Итак, теперь у нас 50 Гб. Проверим это на сервере командой:
Видим свои новые 50 Гб, но пока использовать мы можем только 30 Гб.
4. Теперь удалим текущий раздел диска на 30 Гб, создадим новый на 50 Гб. У вас может быть несколько разделов. Возможно, вам нужно будет создать и несколько новых разделов. Для этой операции будем использовать программу fdisk, которая позволяет управлять разделами жесткого диска. Также важно понимать, что такое разделы диска и для чего они нужны — читаем тут. Для запуска программы fdisk используем команду:
5. Внутри интерактивного режима программы fdisk выполняем несколько операций.
Команда выводит список наших текущих разделов. В моем случае один раздел на 30 Гб и еще 20 Гб в свободном плавании, если так можно сказать.
Удаляем текущий раздел для того, чтобы создать новый на все 50 Гб. Перед операцией еще раз проверяем, сделали ли мы бекап важной информации!
7. Далее указываем программе:
Команда создает новый раздел. Все параметры стоит устанавливать по умолчанию — можно просто нажимать Enter. Если же у вас какой-то особый случай, то указываете свои параметры. Как видно из скриншота, я создал раздел на 50 Гб — то, что мне нужно.
8. В итоге указываю программе:
Эта команда записывает изменения и выходит из fdisk. Не пугаемся, что чтение таблицы разделов не удалось. Следующая команда поможет это исправить. Осталось совсем чуть-чуть.
9. Мы вышли из fdisk и вернулись в основную Linux — строку. Далее вбиваем, как нам посоветовали ранее:
Если все прошло успешно, то вы не увидите никакого сообщения. Если у вас не установлена программа partprobe, то установите ее. Именно partprobe обновит таблицы разделов, что позволит нам расширить раздел до 50 Гб в режиме онлайн. Идем дальше.
Подсказка! Установить partprobe можно вот так:
10. Теперь осталось переопределить размер раздела с помощью программы resize2fs. Она сделает это в режиме онлайн — у меня даже в этот момент скрипты работали и писали на диск.
Программа resize2fs перезапишет метаданные файловой системы. Для этого используем следующую команду:
Здесь sda1 — это имя вашего раздела. В большинстве случаев, это sda1, но возможны и исключения. Будьте внимательны. В итоге программа изменила нам размер раздела. Думаю, что это успех.
11. Теперь давайте убедимся, что размер раздела изменился и теперь у нас 50 Гб. Для это повторим самую первую команду:
Замена дисков меньшего объёма на диски большего объёма в Linux
Всем привет. В преддверии старта новой группы курса «Администратор Linux» публикуем полезный материал, написанный нашим студентом, а также наставником на курсах, специалистом технической поддержки корпоративных продуктов REG.RU — Романом Травиным.
В данной статье будет рассмотрены 2 случая замены дисков и переноса информации на новые диски большего объёма с дальнейшим расширением массива и файловой системы. Первый случай будет касаться замены дисков c одноименной разметкой MBR/MBR либо GPT/GPT, второй случай касается замены дисков с разметкой MBR на диски объёмом более 2 TB, на которые потребуется ставить разметку GPT с разделом biosboot. В обоих случаях диски, на которые переносим данным, уже установлены в сервер. Файловая система, используемая для корневого раздела — ext4.
Случай 1: Замена дисков меньшего объёма на диски большего объёма (до 2TB)
Задача: Заменить текущие диски на диски большего объёма (до 2 TB) с переносом информации. В данном случае имеем диски 2 x 240 GB SSD (RAID-1) с установленной системой и диски 2 x 1 TB SATA, на которые необходимо перенести систему.
Рассмотрим текущую разметку дисков.
Проверим используемое пространство файловой системы на данный момент.
1. Удаление разделов диска из массивов
Проверям состояние массива
Помечаем разделы первого диска, которые используются в каждом массиве, как сбойные.
Удаляем разделы блочного устройства /dev/sda из массивов.
После того, как мы удалили диск из массива, информация о блочных устройствах будет выглядеть следующим образом.
Состояние массивов после удаления дисков.
2. Копирование таблицы разделов на новый диск
Проверить используемую таблицу разделов на диске можно следующей командой.
Выводом для MBR будет:
Копирование таблицы разметки для MBR:
В данной команде первым указывается диск с которого копируется разметка, вторым — куда копировать.
ВНИМАНИЕ: Для GPT первым указывается диск на который копировать разметку, вторым диском указывается диск с которого копировать разметку. Если перепутать диски, то изначально исправная разметка будет перезаписана и уничтожена.
Копирование таблицы разметки для GPT:
Далее назначаем диску случайный UUID (для GPT).
Если после выполненного действия разделы в системе на диске /dev/sdc не определились, то выполняем команду, чтобы перечитать таблицу разделов.
Если на текущих дисках используется таблица MBR и информацию необходимо перенести на диски объёмом более 2 TB, то на новых дисках потребуется вручную создавать разметку GPT с использованием раздела biosboot. Данный случай будет рассмотрен во 2 части данной статьи.
3. Добавление разделов нового диска в массив
Добавим разделы диска в соответствующие массивы.
Проверяем, что разделы добавлены.
После этого дожидаемся синхронизации массивов.
Повторяем пункты 1 — 3 для следующего заменяемого диска.
Помечаем разделы второго диска, которые используются в каждом массиве, как сбойные.
Удаляем разделы блочного устройства /dev/sdb из массивов.
После того, как мы удалили диск из массива, информация о блочных устройствах будет выглядеть следующим образом.
Состояние массивов после удаления дисков.
Добавляем разделы диска в массивы.
Проверяем, что разделы добавлены.
После этого дожидаемся синхронизации массивов.
5. Установка GRUB на новые диски
6. Расширение файловой системы (ext4) корневого раздела
На новых дисках /dev/sdc и /dev/sdd доступны 931.5 GB. Из-за того, что таблица разделов скопирована с дисков меньшего объёма, на разделах /dev/sdc2 и /dev/sdd2 доступны 222.5 GB.
После этого выполняем расширение массива md127 до максимума.
Проверяем, что массив расширился. Теперь его размер стал 930.4 GB.
Выполняем расширение physical volume. Перед расширением проверим текущее состояние PV.
Как видно, PV /dev/md127 использует 222.4 GB пространства.
Расширяем PV следующей командой.
Проверяем результат расширения PV.
[
Расширяем logical volume. Перед расширением проверим текущее состояние LV (1).
LV /dev/vg0/root использует 206.41 GB.
Расширяем LV следующей командой (2).
Проверяем выполненное действие (3).
Как видим, после расширения LV объём занимаемого дискового пространства стал 914.39 GB.
Объём LV увеличился (4), но файловая система по прежнему занимает 204 GB (5).
1. Выполним расширение файловой системы.
Проверяем после выполненной команды размер файловой системы.
Размер корневой файловой системы увеличится до 900 GB. После выполненных действий можно извлекать старые диски.
Случай 2: Замена дисков меньшего объёма на диски большего объёма (более 2TB)
Задание: Заменить текущие диски на диски большего объёма (2 x 3TB) с сохранением информации. В данном случае имеем диски 2 x 240 GB SSD (RAID-1) с установленной системой и диски 2 x 3 TB SATA, на которые необходимо перенести систему. На текущих дисках используется таблица разделов MBR. Так как новые диски имеют объём больше 2 TB, то на них потребуется использовать таблицу GPT, так как MBR не может работать с дисками более 2TB.
Просмотрим текущую разметку дисков.
На диске /dev/sdb используется аналогичная таблица разделов. Проверим используемое дисковое пространство в системе.
Как видно, корень файловой системы занимает 204 GB. Проверим текущее состояние программного RAID-массива.
1. Установка GPT таблицы разделов и разметка диска
Проверим разметку дисков по секторам.
На новом диске 3TB нам необходимо будет создать 3 раздела:
Используя parted выполним следующие команды для разметки диска.
Выполняем команду parted /dev/sdc и переходим в режим редактирования разметки диска.
Создаём таблицу разделов GPT.
Создаём 1 раздел bios_grub раздел и устанавливаем флаг для него.
Создаём 3 раздел, который также будет использоваться в качестве блока массива, в котором будет LVM.
В данном случае устанавливать флаг не обязательно, но если необходимо, то возможно его установить следующей командой.
Проверяем созданную таблицу.
Назначаем диску новый случайный GUID.
2. Удаление разделов первого диска из массивов
Проверям состояние массива
Помечаем разделы первого диска, которые используются в каждом массиве, как сбойные.
Удаляем разделы блочного устройства /dev/sda из массивов.
Проверяем состояние массива после удаления диска.
3. Добавление разделов нового диска в массив
Следующим шагом необходимо добавить разделы нового диска в массивы для синхронизации. Смотрим текущее состояние разметки дисков.
После чего дожидаемся синхронизации массива.
Разметка дисков после добавления разделов в массив.
4. Удаление разделов второго диска из массивов
Помечаем разделы второго диска, которые используются в каждом массиве, как сбойные.
Удаляем разделы блочного устройства /dev/sda из массивов.
5. Копируем таблицу разметки GPT и синхронизируем массив
Установка gdisk для CentOS:
Установка gdisk для Debian/Ubuntu:
ВНИМАНИЕ: Для GPT первым указывается диск на который копируем разметку, вторым диском указывается диск с которого копируют разметку. Если перепутать диски, то изначально исправная разметка будет перезаписана и уничтожена.
Копируем таблицу разметки GPT.
Далее добавляем каждый из разделов, участвующих в программных RAID-массивах.
Дожидаемся синхронизации массива.
После копирования разметки GPT на второй новый диск, разметка будет выглядеть следующим образом.
Далее устанавливаем GRUB на новые диски.
Установка для CentOS:
Установка для Debian/Ubuntu:
Обновляем информацию о массиве.
Обновляем образ initrd :
Для CentOS:
Обновляем конфигурацию GRUB.
После выполненных действий старые диски можно извлекать.
6. Расширение файловой системы (ext4) корневого раздела
Разметка дисков до расширения файловой системы после переноса системы на диски 2 x 3TB (RAID-1).
Сейчас разделы /dev/sdc3 и /dev/sdd3 занимают 2.7 TB. Так как мы создавали новую разметку дисков с таблицей GPT, то размер 3 раздела был сразу задан на максимально возможное дисковое пространство, расширять раздел в данном случае не требуется.
После расширения массива md126 размер занимаемого пространства увеличился до 2.7 TB.
Расширяем physical volume.
Расширяем PV следующем командой.
Проверяем выполненное действие.
Расширяем logical volume vg0-root.
После расширения PV проверим занимаемое пространство VG.
Проверим занимаемое LV пространство.
Том vg0-root занимает 206.41 GB.
Расширяем LV до максимума дискового пространства.
Проверяем пространство LV после расширения.
Расширяем файловую систему (ext4).
Проверим текущий размер файловой системы.
Том /dev/mapper/vg0-root занимает 204 GB после расширения LV.
Расширяем файловую систему.
Проверяем размер файловой системы после её расширения.
Размер файловой системы увеличен на весь объём тома.