Centos 7 Расширить раздел с нераспределенным пространством


14

У меня есть сервер Centos 7 (CentOS Linux release 7.3.1611 (Core))Когда я обновил свой сервер, я увидел ошибку, вам нужно дополнительное место. Но у меня был 20 ГБ диск на сервере, когда я проверял дисковое пространство, я видел только созданный раздел на 4,5 ГБ, а раздел на 16 ГБ - это свободное место, а не нераспределенное. Как я могу расширить раздел с 16 ГБ свободного места?

lsblk:

NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0               2:0    1    4K  0 disk
sda               8:0    0   20G  0 disk
├─sda1            8:1    0  500M  0 part /boot
└─sda2            8:2    0  4.5G  0 part
  ├─centos-root 253:0    0    4G  0 lvm  /
  └─centos-swap 253:1    0  512M  0 lvm  [SWAP]
sr0              11:0    1 1024M  0 rom

введите описание изображения здесь


сделать man lvmили tldp.org/HOWTO/LVM-HOWTO
— alexus

Ответы:


21

Есть три шага:

  1. изменить таблицу разделов так, чтобы они sda2заканчивались на конце диска
  2. перечитать таблицу разделов (потребуется перезагрузка)
  3. изменить размер LVM PV с помощью pvresize

Шаг 1 - Таблица разделов

Беги fdisk /dev/sda. Проблема, pчтобы напечатать вашу текущую таблицу разделов и скопировать этот вывод в какое-то безопасное место. Теперь выдайте, dа затем 2удалите второй раздел. Выпуск nдля создания нового второго раздела. Убедитесь, что начало равно началу таблицы разделов, которую вы напечатали ранее. Убедитесь, что конец находится в конце диска (обычно по умолчанию).

tЗатем 2следует проблема , 8eчтобы переключить тип раздела вашего второго второго раздела на 8e (Linux LVM).

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

Если все выглядит правильно, введите wзапись таблицы разделов на диск. Вы получите сообщение об ошибке от partprobe о невозможности перечитать таблицу разделов (поскольку диск используется).

Перезагрузите вашу систему

Этот шаг необходим, поэтому таблицу разделов перечитывают.

Изменить размер LVM PV

После перезагрузки вашей системы вызовите pvresize /dev/sda2. Ваш физический том LVM теперь будет охватывать остальную часть диска, и вы сможете создавать или расширять логические тома в этом пространстве.


отличное решение, оно отлично работает. пока только часть, как расширить логические тома.
— Mimouni

1
Этот превосходный ответ остановился чуть ли не до финиша! Я понял, как это закончить. Приведенный в вопросе пример показал два логических тома sda2: centos-rootи centos-swap. В этом случае группа томов есть, centosа два логических тома внутри этой группы - rootи swap. Если бы мы хотели расширить centos-rootтом в этом примере на 50% доступного пространства в нашем недавно расширенном sda2разделе, мы бы использовали lvextend -r -l +50%FREE /dev/centos/root. -rИзменяет основную файловую систему в соответствии с расширенным логическим тома.
— Шадониня,

@Shadoninja, это выходит за рамки первоначального вопроса. Поэтому я не добавил его и не буду добавлять его к этому вопросу в будущем.
— Андреас Рогге

@AndreasRogge Я бы сказал, что это полностью входит в сферу этого вопроса, поскольку терминология в этом пространстве может быть запутанной и легко сопоставимой. Стоит опубликовать полный обзор того, как получить нераспределенное дисковое пространство, используемое файловой системой, поскольку это будет чрезвычайно распространенной причиной, по которой люди могут найти этот вопрос.
— Шадониня

13

Вы можете сделать это без перезагрузки в CentOS 7. Предполагая, что у вас диск / dev / vda и стандартное разбиение RHEL / CentOS:

Расширить раздел

# fdisk /dev/vda

Введите, pчтобы распечатать исходную таблицу разделов.

Введите d(удалить), а затем, 2чтобы удалить существующее определение раздела (раздел 1 обычно / boot, а раздел 2 обычно корневой раздел).

Введите n(новый), затем p(основной), затем, 2чтобы заново создать раздел номер 2 и enterпринять начальный блок и еще enterраз, чтобы принять конечный блок, который по умолчанию установлен на конец диска.

Введите t(тип), а 2затем, 8eчтобы изменить новый тип раздела на «Linux LVM».

Нажмите Enter, pчтобы напечатать новую таблицу разделов и убедитесь, что начальный блок соответствует тому, что было в исходной таблице разделов, напечатанной выше.

Введите, wчтобы записать таблицу разделов на диск. Вы увидите ошибку, Device or resource busyкоторую вы можете игнорировать.

Обновить таблицу разделов ядра в памяти

После изменения таблицы разделов выполните следующую команду, чтобы обновить таблицу разделов ядра в памяти:

# partx -u /dev/vda

Изменить размер физического тома

Измените размер PV, чтобы распознать дополнительное пространство

# pvresize /dev/vda2

Изменение размера LV и файловой системы

В этой команде centosPV, rootLV и /dev/vda2раздел, который был расширен. Использование pvsи lvsкоманды , чтобы увидеть ваши физические и логические имена томов , если вы не знаете их. -rВариант в этой команде изменяет файловую систему соответствующим образом , вам не нужно звонить resize2fsили xfs_growfsотдельно.

# lvextend -r centos/root /dev/vda2

Более сложный ответ, чем «выбранный ответ» один!
— Furkat U.

Это великолепно. Спасибо! Это должен быть принятый ответ. Я пропустил последний шаг по изменению размера lv и файловой системы!
— Skinner927

4

Для тех, у кого возникают проблемы с расширением логических томов, таких как я, чтение этого поста может помочь. Таким образом, вы можете использовать lvextendдля расширения вашего логического тома: lvextend -l +<PE> <LV_PATH> вы можете получить количество оставшихся PE ( <PE>) vgdisplayи получить путь вашего логического тома ( LV_PATH) lvdisplay.

Затем, в зависимости от вашего дистрибутива, вы либо захотите xfs_growfs <LV_PATH>(Centos 7), либо, resize2fs <LV_PATH>наконец, измените размер.


0

Проверьте это - все в одной строке, без вопросов:

parted —pretend-input-tty /dev/vda resizepart 2 100%;
partx -u /dev/vda; pvresize /dev/vda2;
lvextend -r centos/var /dev/vda2

Вы должны рассмотреть возможность добавления объяснений и вашего окружения. Например, мой partx не имеет опции -u(Centos6.7 util-linux-ng-2.17.2-12.28.el6).
— Буп
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.