Как расширить диск centos 7
Перейти к содержимому

Как расширить диск centos 7

  • автор:

#Как расширить существующий диск в Linux?

lsblk — вывести список блочных устройств;
pvs — вывести список физических томов;
vgs — вывести список группы томов;
lvs — вывести список логических томов;
fdisk -l — просмотреть подробно разделы диска;
dnf -y install cloud-utils-growpart — установить утилиту growpart для Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux; apt -y install cloud-guest-utils — установить утилиту growpart для Ubuntu, Debian;
growpart /dev/sda 2 — расширить раздел /dev/sda2;
pvresize /dev/sda2 — расширить существующий физический том /dev/sda2;
lvextend -r -l +100%FREE /dev/centos/root — расширить логический том /dev/centos/root из группы томов centos;
df -hT — вывести список разделов и файловых систем;
xfs_growfs /dev/mapper/centos-root — увеличить размер файловой системы XFS на логическом томе /dev/mapper/centos-root (для Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux);
resize2fs /dev/mapper/ubuntu-root — увеличить размер файловой системы EXT4 на логическом томе /dev/mapper/ubuntu-root (для Ubuntu, Debian).

В данном примере будет описано как расширить существующий раздел на диске используя 15Gb свободного дискового пространства из неразмеченной области этого же диска. Расширение будет выполнено на примере дистрибутива CentOS .
Данная инструкция подходит для большинства дистрибутивов Linux, дает подробную информацию как корректно расширить дисковое пространство, учитывает особенности команд различных дистрибутивов.

Примечание: Все команды необходимо выполнять под пользователем root либо с правами суперпользователя (sudo).
При выполнении данной инструкции есть риск потери данных, поэтому предварительно рекомендуется сделать резервную копию (backup) виртуальной машины.

#Шаг 1. Анализ конфигурации дискового пространства

  1. Сперва следует определить название раздела, который собираетесь расширить и объем неразмеченной области на устройстве (диске) с помощью команды lsblk .
  2. Затем следует проверить существующую конфигурацию LVM командами:
    pvs — вывести название и количество имеющихся физических томов (PV)
    vgs — вывести группы томов (VG)
    lvs — вывести логические тома (LV)
    Необходимо определить системный раздел и тип файловой системы на нем, который требуется расширить с помощью команды df -hT .
  3. Теперь необходимо проверить имеющиеся разделы диска с помощью утилиты fdisk -l .

Подробнее по шагу 1

1.1 Выведите список блочных устройств командой lsblk . Определите раздел, который собираетесь расширить и объем неразмеченной области на диске.

ext1.1

В данном примере мы видим, что в системе имеется 1 устройство (диск) /dev/sda размером 45Gb.
На диске созданы 2 раздела общим объемом 30Gb:

  • основной /dev/sda1 — 1Gb,
  • расширенный /dev/sda2 — 29Gb,
    оставшиеся 15Gb остаются в неразмеченной области.

Также мы видим, что раздел /dev/sda2 (29Gb) является расширенным разделом LVM , где имеется группа томов centos и 2 логических тома root и swap. Будем расширять логический том root на расширенном разделе dev/sda2 используя свободные 15Gb из неразмеченной области диска sda .

1.2 Проверьте существующую конфигурацию LVM , определив название и количество имеющихся физических томов (PV), группы томов (VG), логических томов (LV) следующими командами pvs , vgs , lvs соответственно:

ext1.2

В данном примере мы видим, что в системе имеется физический том /dev/sda2 , который входит в созданную группу томов centos. В этой группе томов созданы 2 логических тома: root и swap.

1.3 Проверьте разделы диска с помощью утилиты fdisk -l .

Пример отображения для CentOS :

ext1.3.1

Раздел /dev/sda2 является расширяемым разделом LVM .

Пример отображения для Ubuntu :

ext1.3.2

Обратите внимание, в дистрибутиве Ubuntu сектора раздела /dev/sda5 входят в сектора раздела /dev/sda2 , т.е. имеют одно дисковое пространство.
Раздел /dev/sda2 является расширенным, раздел /dev/sda5 является разделом LVM , созданным на расширенном разделе. Поэтому, для того чтобы расширить логический том root предварительно необходимо расширить оба этих раздела — об этом будет сказано далее.

#Шаг 2. Расширение раздела с помощью утилиты growpart .

2.1 Сперва следует установить утилиту growpart в соответствии с вашим дистрибутивом: dnf -y install cloud-utils-growpart — команда для дистрибутивов Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux.
Примечание: для устаревших дистрибутивов (CentOS 7.9) вместо dnf используйте yum .

apt -y install cloud-guest-utils — команда для дистрибутивов Ubuntu, Debian.

2.2 Затем необходимо расширить раздел с помощью команды:
growpart /dev/sda 2 — где /dev/sda 2 — имя расширяемого раздела.
Примечание: для Ubuntu может потребоваться расширить 2 раздела (это можно узнать по команде fdisk -l ).

2.3 Чтобы убедиться в расширении раздела следует повторить команду lsblk .

Подробнее по шагу 2

2.1 Установите утилиту growpart в соответствии с вашим дистрибутивом.

  • для дистрибутивов Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux команда:

[root@centos ~]# dnf -y install cloud-utils-growpart

  • для дистрибутивов Ubuntu, Debian команда:

[root@ubuntu ~]# apt -y install cloud-guest-utils

2.2 Расширьте раздел (в нашем случае /dev/sda2 — корневой раздел (root)) на всю неразмеченную область, т.е. в нашем случае на 15Gb. (В нашем примере /dev/sda2 — корневой раздел. Обратите внимание, у вас может быть другой раздел).

[root@centos ~]# growpart /dev/sda 2

Для Ubuntu как мы выяснили на шаге 1.3 требуется расширить 2 раздела: расширенный раздел /dev/sda2 и раздел LVM /dev/sda5 :

[root@ubuntu ~]# growpart /dev/sda 2 [root@ubuntu ~]# growpart /dev/sda 5 

Примечание: у вас могут быть другие разделы для расширения, проверить это можно командами lsblk и fdisk -l .

2.3 Убедитесь в расширении раздела командой lsblk .

ext2.3

#Шаг 3. Расширение пространства LVM

3.1 Сперва необходимо расширить существующий физический том с помощью команды:
pvresize /dev/sda2 , где /dev/sda2 — имя расширяемого раздела

3.2 Затем необходимо расширить логический том, выполнив команду:
lvextend -r -l +100%FREE /dev/centos/root ,
где /dev/centos/root — путь расширяемой файловой системы,
centos — название группы (можно узнать по команде vgs),
root — название логического тома (можно узнать по команде lvs ).
В команде выше, вместо /dev/centos/root можно указать другой путь /dev/mapper/centos-root (можно узнать по команде df -hT ), результат будет тот же.

Подробнее по шагу 3

3.1 Расширьте существующий физический том ( physical volume ) командой pvresize .
Проверяем выполнение командой pvs — значение столбца PFree должно увеличится на расширяемый объем.
(В нашем примере физический том — /dev/sda2 . Обратите внимание у вас может быть другой другой физический том).

ext3.1

3.2 Проверьте размер группы томов (volume group). Значение столбца VFree должно увеличиться на расширяемый объем.

ext3.2

3.3 Расширьте логический том (logical volume) используя команду lvextend -r -l +100%FREE /dev/centos/root ,
где centos — имя группы томов,
root — имя логического тома.
Примечание: у вас могут быть другие названия группы и логического тома.
Проверьте выполнение командой lvs — значение столбца PFree должно увеличится.

ext3.3

#Шаг 4. Расширение файловой системы

Примечание: Данная операция несет риск потери данных. Предварительно рекомендуется сделать резервную копию виртуальной машины.

Для увеличения файловой системы на логическом томе, необходимо ввести команду в зависимости от дистрибутива:

  • Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux (файловая система XFS):
    xfs_growfs /dev/mapper/centos-root , где /dev/mapper/centos-root — название расширяемой файловой системы (название и тип можно узнать по команде df -hT );
  • Ubuntu, Debian (файловая система ext4 )
    resize2fs /dev/mapper/ubuntu-root , где /dev/mapper/ubuntu-root — название расширяемой файловой системы (название и тип можно узнать по команде df -hT )

Подробнее по шагу 4

4.1 Определим путь монтирования файловой системы расширяемого раздела, точку монтирования и тип файловой системы.
В нашем примере путь — /dev/mapper/centos-root (или /dev/centos/root ),
точка монтирования — / ,
тип файловой системы — xfs .
Обратите внимание, у вас будет свой путь и тип файловой системы.

4.2 Далее необходимо увеличить размер файловой системы на логическом томе. В зависимости от типа файловой системы и дистрибутива выберите ниже подходящий вам тип.

4.2.1 Для файловой системы XFS (дистрибутивы Fedora, CentOS, RHEL, Oracle Linux, Alma Linux, Rocky Linux) используется утилита xfs_growfs и путь указанный в выводе команды df -hT для расширяемого раздела (в примере ниже для Centos — это /dev/mapper/centos-root ).

ext4.2.1

4.2.2 Для файловой системы ext4 (дистрибутивы Ubuntu, Debian) используется утилита resize2fs и путь указанный в выводе команды df -hT для расширяемого раздела (в примере ниже для Ubuntu — это /dev/mapper/ubuntu-root ).

ext4.2.2

#Шаг 5. Проверка

Для проверки нового размера диска и файловой системы следует повторить команды df -hT и lsblk .

Подробнее по шагу 5

Увеличить диск Centos7

Добрый день. Centos7, раньше стояло на 2 тб рейд зеркале. Переносили на 4 тб рейд. Боевой Астериск. Нужно увеличить диск с 2тб до 4. Боюсь даже подойти чтоб не сломать. Подскажите как менее опасно это сделать? Спасибо

[root@asterisk-main ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 3,7T 0 disk ├─sda1 8:1 0 3,9G 0 part │ └─md126 9:126 0 3,9G 0 raid1 [SWAP] ├─sda2 8:2 0 1,8T 0 part │ └─md127 9:127 0 1,8T 0 raid1 / └─sda3 8:3 0 185G 0 part [root@asterisk-main ~]# df -h Файловая система Размер Использовано Дост Использовано% Cмонтировано в /dev/md127 1,8T 1,4T 332G 81% / devtmpfs 3,8G 0 3,8G 0% /dev tmpfs 3,8G 111M 3,7G 3% /dev/shm tmpfs 3,8G 89M 3,7G 3% /run tmpfs 3,8G 0 3,8G 0% /sys/fs/cgroup tmpfs 773M 0 773M 0% /run/user/0 

redangel666
26.08.21 12:56:48 MSK

Отредактируйте сообщение и используйте разметку маркдаун для выделения блоков кода.

anonymous
( 26.08.21 13:00:39 MSK )

Подскажите как менее опасно это сделать?

Потренироваться на виртуалках.

Забекапить перед экспериментами.

У тебя оба raid1 какие-то странные. Там только по одному блочному устройству в каждом.

Radjah ★★★★★
( 26.08.21 13:24:30 MSK )
Ответ на: комментарий от Radjah 26.08.21 13:24:30 MSK

Перенос на виртуальную машину займет много времени, не могу себе этого позволить прервать сервис. Переносили Filezilla. А в чем странность? Нельзя в акрониксе например расширить дисковое пространство?

redangel666
( 26.08.21 13:32:42 MSK ) автор топика
Ответ на: комментарий от redangel666 26.08.21 13:32:42 MSK

Там только по одному блочному устройству в каждом.

Нельзя в акрониксе например расширить дисковое пространство?

Если без перемещения раздела по диску и с расширение только «вправо», то хватит fdisk, mdadm и утилиты для расширения ФС.

Radjah ★★★★★
( 26.08.21 13:36:57 MSK )
Ответ на: комментарий от Radjah 26.08.21 13:36:57 MSK

[root@asterisk-main ~]# cat /proc/mdstat Personalities : [raid1] md126 : active raid1 sda1[1] 4096000 blocks super 1.2 [2/1] [_U] md127 : active raid1 sda2[1] 1949415232 blocks super 1.0 [2/1] [_U] bitmap: 15/15 pages [60KB], 65536KB chunk unused devices:

redangel666
( 26.08.21 13:44:12 MSK ) автор топика
Ответ на: комментарий от redangel666 26.08.21 13:32:42 MSK

Акронис сугубо виндовый софт, он не умеет работать с Linux VLM и mdraid.

Vsevolod-linuxoid ★★★★★
( 26.08.21 13:46:07 MSK )
Ответ на: комментарий от Vsevolod-linuxoid 26.08.21 13:46:07 MSK

мда, я в глубоком шоке от манипуляций нахожусь…. mdadm расширение объема страшно

redangel666
( 26.08.21 13:50:09 MSK ) автор топика
Ответ на: комментарий от redangel666 26.08.21 13:50:09 MSK

Позвать админа не пробовали?

Vsevolod-linuxoid ★★★★★
( 26.08.21 13:58:14 MSK )
Ответ на: комментарий от redangel666 26.08.21 13:44:12 MSK

Ага, для начала стоит починить разваленное зеркало.

zemidius
( 26.08.21 14:09:53 MSK )
Ответ на: комментарий от Vsevolod-linuxoid 26.08.21 13:58:14 MSK

Админ в линуксе слабоват…

redangel666
( 26.08.21 15:32:09 MSK ) автор топика
Ответ на: комментарий от zemidius 26.08.21 14:09:53 MSK

Поговорил подробнее кто осущестлял перенос рейда. Вначале рейд был создан как программный на 2 дисках по 2 тб.. Затем куплен хардварный рейдмассив и Clonzilla перенесен на хардварный массив из 2 дисков по 4 Тб. Стоит браться сейчас пробовать восстановить софтверный массив?

redangel666
( 26.08.21 15:45:18 MSK ) автор топика
Ответ на: комментарий от redangel666 26.08.21 15:32:09 MSK

Тогда позовите другого.

Vsevolod-linuxoid ★★★★★
( 26.08.21 15:48:09 MSK )
Ответ на: комментарий от Vsevolod-linuxoid 26.08.21 13:46:07 MSK

4.2, домашняя версия да, не умеет, серверная под линукс умеет.

Benis
( 26.08.21 15:51:49 MSK )
Ответ на: комментарий от redangel666 26.08.21 15:45:18 MSK

Мда… Все плохо. После переноса с софтового на аппаратный рейд надо софтовый то убрать, а не оставлять его «однокрылым», тем самым оставляя еще одну точку отказа и путаницу.

zemidius
( 26.08.21 16:06:52 MSK )
Ответ на: комментарий от redangel666 26.08.21 13:44:12 MSK

У тебя нет зеркала, у тебя два рейда в полуразобранном состоянии. Если это боевой сервер — отойди, ни к чему не прикасайся и зови того, кто соображает.

pinus_nigra
( 26.08.21 16:17:47 MSK )
Ответ на: комментарий от pinus_nigra 26.08.21 16:17:47 MSK

Принято, спасибо. Еще найти в своем маленьком городе спеца.. Есть конечно кластер телефонии, могу выйти в останов часов на 6.

redangel666
( 26.08.21 16:22:16 MSK ) автор топика
Ответ на: комментарий от zemidius 26.08.21 16:06:52 MSK

Может статься что /dev/sda — это аппаратный рейд.

И тогда оставлять как есть, либо убирать программный рейд.

anonymous
( 26.08.21 17:05:08 MSK )
Ответ на: комментарий от anonymous 26.08.21 17:05:08 MSK

Может статься что /dev/sda — это аппаратный рейд.

Кэп )) Об этом и было уже выше почти открытым текстом написано

zemidius
( 26.08.21 17:12:43 MSK )
Ответ на: комментарий от redangel666 26.08.21 16:22:16 MSK

Железо серверное, BMC есть? Тогда можно удаленно помочь.

zemidius
( 26.08.21 17:13:40 MSK )

У тебя простая ситуация на самом деле. Надо sda3 сдвинуть в конец диска, а sda2 растянуть до почти 4ТБ. Потом сделать ресайз md127 и в конце ресайз FS

futurama ★★★★★
( 26.08.21 18:37:42 MSK )
Последнее исправление: futurama 26.08.21 18:38:52 MSK (всего исправлений: 2)

Ответ на: комментарий от redangel666 26.08.21 13:32:42 MSK

Перенос на виртуальную машину займет много времени

Зачем переносить? Смоделируй ситуацию. Создай мдрайд на двух дисках, один убери, второй увеличить. Все подобные ситуации стоит прогонять на модели

AlexVR ★★★★★
( 26.08.21 19:26:46 MSK )
Ответ на: комментарий от zemidius 26.08.21 17:13:40 MSK

Консоли нет к сожалению.. Что такое sda3 не знаю. На боевом сервисе такие мунипуляции возможны? Сколько мне это обойдется?

redangel666
( 26.08.21 20:10:05 MSK ) автор топика
Ответ на: комментарий от redangel666 26.08.21 20:10:05 MSK

Плохо. Надо будет загружаться с флешки/cd линуксового и увеличивать раздел. Для этого он должен быть отмонтирован.

zemidius
( 26.08.21 20:12:43 MSK )
Ответ на: комментарий от zemidius 26.08.21 20:12:43 MSK

сколько мне это обойдется? могу прервать сервис в 7 8 вечера завтра. высокий ли риск потери данных?

redangel666
( 26.08.21 20:22:01 MSK ) автор топика
Ответ на: комментарий от redangel666 26.08.21 20:22:01 MSK

Нк понял вопроса, если честно. BMC же всё равно нет.

высокий ли риск потери данных?

При аккуратном использовании команд — крайне низкий, т.к. раздел расширяется «вправо», на неиспользуемую область, надо потом resize2fs натравить + mdadm grow. Естественно, на эти этапы обязателен бесперебойник (да и вообще он обязателен на серверах ИМХО)

zemidius
( 26.08.21 20:43:43 MSK )
Последнее исправление: zemidius 26.08.21 20:43:50 MSK (всего исправлений: 1)

Вот что тебе надо сделать (раз уж нет инфы о sda3)

  1. Дамп sda3 в файл. (на / есть место)
  2. Удалить sda3 и снова создать в конце диска.
  3. Залить дамп из п.1 на новый sda3
  4. Растянуть sda2
  5. Ресайз md127
  6. Ресайз fs (/) Предположительно resize2fs (или xfs_growfs)

futurama ★★★★★
( 26.08.21 23:06:48 MSK )
Ответ на: комментарий от futurama 26.08.21 23:06:48 MSK

[root@asterisk-main ~]# fdisk -l Disk /dev/sda: 3999.7 GB, 3999688294400 bytes, 7811891200 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 Disk label type: dos Disk identifier: 0x0008084c Устр-во Загр Начало Конец Блоки Id Система /dev/sda1 2048 8198143 4098048 fd Linux raid autodetect /dev/sda2 * 8198144 3907028991 1949415424 fd Linux raid autodetect /dev/sda3 3907028992 4294967294 193969151+ 83 Linux Disk /dev/md127: 1996.2 GB, 1996201197568 bytes, 3898830464 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 Disk /dev/md126: 4194 MB, 4194304000 bytes, 8192000 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 [root@asterisk-main ~]# 

redangel666
( 27.08.21 08:52:00 MSK ) автор топика
Ответ на: комментарий от redangel666 27.08.21 08:52:00 MSK

[root@asterisk-main ~]# parted GNU Parted 3.1 Используется /dev/sda Добро пожаловать в GNU Parted! Наберите 'help' для просмотра списка команд. (parted) print free Модель: ATA MARVELL Raid VD (scsi) Диск /dev/sda: 4000GB Размер сектора (логич./физич.): 512B/512B Таблица разделов: msdos Disk Flags: Номер Начало Конец Размер Тип Файловая система Флаги 32,3kB 1049kB 1016kB Свободное место 1 1049kB 4197MB 4196MB primary raid 2 4197MB 2000GB 1996GB primary ext4 загрузочный, raid 3 2000GB 2199GB 199GB primary 2199GB 4000GB 1801GB Свободное место (parted) 

redangel666
( 27.08.21 09:21:44 MSK ) автор топика
Ответ на: комментарий от futurama 26.08.21 23:06:48 MSK

Никак не могу понять зачем удалять sda3 и опять восстанавливать? Судя по выводу это пустое место, там нет ничего. И он в конце. Соответственно вижу возвозможность грохнуть этот раздел безвозвратно. И потом расширить sda2. А зачем md127 расширять, его нельзя грохнуть? Как бы поднять нат1 уровень дерева вверх. Зачем этот раздел. Ведь рейд массив железный, занимает весь sda. Тупые вопросы, извините

anonymous
( 27.08.21 10:51:33 MSK )
Ответ на: комментарий от anonymous 27.08.21 10:51:33 MSK

Мне не известно что за раздел sda3 и он не в конце диска, после него есть свободное место, которое этот раздел мешает добавить к sda2

Что касается md127, то он конечно не нужен, но и начинать глобальные переделки – это лишние риски.

Технически самый простой способ – это создать на свободном месте sda4, на нем LVM и перенести туда /. Перегрузиться на новый /, грохнуть md127, а sda2 добавить в LVM и далее ресайз средствами LVM

futurama ★★★★★
( 27.08.21 14:40:22 MSK )
Последнее исправление: futurama 27.08.21 14:40:46 MSK (всего исправлений: 1)

Ответ на: комментарий от futurama 27.08.21 14:40:22 MSK

Как создать sda4 представляю Создать lvm в моем испорченном виндовз восприятии создать на sda4 логический том. Как перенести файлы понятно. А вот как сделать чтоб система с него загрузилась не понятно. Спасибо за помощь

anonymous
( 27.08.21 16:56:23 MSK )
Ответ на: комментарий от anonymous 27.08.21 16:56:23 MSK

только думай что делаешь, а не тупо копи/паста

My notebook

Увеличение размера диска на CentOS 7 (VMware)

На сайте VMware размещена инструкция по увеличению размера логического тома в виртуальной машине под управлением Red Hat и Cent OS, но написана она для более ранних версий. В результате выполнений действий по инструкции получим ошибку:

resize2fs /dev/mapper/centos_ns-root resize2fs 1.42.9 (28-Dec-2013) resize2fs: Bad magic number in super-block while trying to open /dev/mapper/cent os_ns-root Couldn't find valid filesystem superblock.

Предварительно диск должен быть расширен средствами гипервизора.

В CentOS / RHEL 7 нужно использовать System Storage Manager.

yum install system-storage-manager Installed: system-storage-manager.noarch 0:0.4-5.el7

После установки находим наш расширеный диск, в моем случае это /dev/sda расширеный до 50 ГБ:

ssm list -------------------------------------------------------------- Device Free Used Total Pool Mount point -------------------------------------------------------------- /dev/fd0 4.00 KB /dev/sda 50.00 GB PARTITIONED /dev/sda1 500.00 MB /boot /dev/sda2 0.00 KB 3.51 GB 3.51 GB centos_ns -------------------------------------------------------------- --------------------------------------------------- Pool Type Devices Free Used Total --------------------------------------------------- centos_ns lvm 1 0.00 KB 3.51 GB 3.51 GB --------------------------------------------------- ------------------------------------------------------------------------------------------- Volume Pool Volume size FS FS size Free Type Mount point ------------------------------------------------------------------------------------------- /dev/centos_ns/root centos_ns 3.11 GB xfs 3.10 GB 2.15 GB linear / /dev/centos_ns/swap centos_ns 412.00 MB linear /dev/sda1 500.00 MB xfs 496.67 MB 386.61 MB part /boot

Создаем главный (primary) раздел на расширенном диске:

fdisk /dev/sda Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p Disk /dev/sda: 53.7 GB, 53687091200 bytes, 104857600 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 Disk label type: dos Disk identifier: 0x000c30dc Device Boot Start End Blocks Id System /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 8388607 3681280 8e Linux LVM Command (m for help): n Partition type: p primary (2 primary, 0 extended, 2 free) e extended Select (default p): p Partition number (3,4, default 3): 3 First sector (8388608-104857599, default 8388608): Using default value 8388608 Last sector, +sectors or +size (8388608-104857599, default 104857599): Using default value 104857599 Partition 3 of type Linux and of size 46 GiB is set Command (m for help): t Partition number (1-3, default 3): 3 Hex code (type L to list all codes): 8e Changed type of partition 'Linux' to 'Linux LVM' Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 16: Device or resource busy. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) Syncing disks.
shutdown -r now

После загрузки смотрим диски (fdisk -l) должен появится раздел /dev/sda3 с типом 8e

fdisk -l Disk /dev/sda: 53.7 GB, 53687091200 bytes, 104857600 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 Disk label type: dos Disk identifier: 0x000c30dc Device Boot Start End Blocks Id System /dev/sda1 * 2048 1026047 512000 83 Linux /dev/sda2 1026048 8388607 3681280 8e Linux LVM /dev/sda3 8388608 104857599 48234496 8e Linux LVM Disk /dev/mapper/centos_ns-root: 3334 MB, 3334471680 bytes, 6512640 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 Disk /dev/mapper/centos_ns-swap: 432 MB, 432013312 bytes, 843776 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

Преобразовываем новый раздел в физический том

pvcreate /dev/sda3 Physical volume "/dev/sda3" successfully created

Смотрим имя Volume group

vgdisplay --- Volume group --- VG Name centos_ns System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 6 VG Access read/write VG Status resizable

Расширяем Volume group

vgextend centos_ns /dev/sda3 Volume group "centos_ns" successfully extended

Смотрим свободное пространство Volume group:

vgdisplay centos_ns | grep "Free" Free PE / Size 11775 / 46.00 GiB

Определяем имя нужного Logical Volume:

lvdisplay --- Logical volume --- LV Path /dev/centos_ns/root LV Name root VG Name centos_ns

Расширяем определенный Logical Volume на свободный размер:

ssm resize -s+46G /dev/centos_ns/root SSM Error (2005): There is not enough space in the pool 'centos_ns' to grow volume '/dev/centos_ns/root'

Если возникла такая ошибка указываем немного меньше размер

ssm resize -s+45.9G /dev/centos_ns/root Extending logical volume root to 49.00 GiB Logical volume root successfully resized meta-data=/dev/mapper/centos_ns-root isize=256 agcount=60, agsize=203520 blks = sectsz=512 attr=2, projid32bit=1 = crc=0 data = bsize=4096 blocks=12058624, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=0 log =internal bsize=4096 blocks=2560, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 12058624 to 12845056
ssm list ----------------------------------------------------------------- Device Free Used Total Pool Mount point ----------------------------------------------------------------- /dev/fd0 4.00 KB /dev/sda 50.00 GB PARTITIONED /dev/sda1 500.00 MB /boot /dev/sda2 0.00 KB 3.51 GB 3.51 GB centos_ns /dev/sda3 104.00 MB 45.89 GB 46.00 GB centos_ns ----------------------------------------------------------------- ------------------------------------------------------- Pool Type Devices Free Used Total ------------------------------------------------------- centos_ns lvm 2 104.00 MB 49.40 GB 49.50 GB ------------------------------------------------------- ------------------------------------------------------------------------------------------- Volume Pool Volume size FS FS size Free Type Mount point ------------------------------------------------------------------------------------------- /dev/centos_ns/root centos_ns 49.00 GB xfs 45.99 GB 2.04 GB linear / /dev/centos_ns/swap centos_ns 412.00 MB linear /dev/sda1 500.00 MB xfs 496.67 MB 363.48 MB part /boot ------------------------------------------------------------------------------------------- [root@ns ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos_ns-root 49G 1.1G 48G 3% / devtmpfs 237M 0 237M 0% /dev tmpfs 246M 0 246M 0% /dev/shm tmpfs 246M 4.4M 241M 2% /run tmpfs 246M 0 246M 0% /sys/fs/cgroup /dev/sda1 497M 175M 323M 36% /boot

Минниахметов Равиль Юрисович

Увеличение дискового пространства корневого раздела LVM (Centos)

Проверяем размер существующих разделов в операционной системе:

# df -h

485M 37M 424M 8%

В операционных системах на базе Linux посмотреть размер папки (директории) можно с помощью команды du. Эта команда, выполняемая в консоли, позволяет оценить используемый объем места на жестком диске отдельно по папкам и файлам, просуммировать результат, узнать общий размер папки.

# du -h (название папки)

Добавляем новый диск (/dev/sda(b)) или для виртуальных машин увеличиваем размер диска и создаем на нем раздел (/dev/sda(b)4) :

Примечание: в операционной системе в основном разделе возможно создать только 4 логических дисков. Если у Вас уже создано 4 диска, то создать 5 не получиться. В данной ситуации возможное решение добавление нового жесткого диска (/dev/sdb) и дальнейшее добавление его в LVM.

# fdisk /dev/sda(b)
Команда (m для справки): n
Действие команды
e расширенный
p основной раздел (1-4)
p
Номер раздела (1-4): 4
Первый цилиндр (1-3524, по умолчанию 1):
Используется значение по умолчанию 1
Последний цилиндр или +size или +sizeM или +sizeK (1-3524, по умолчанию 3524):
Используется значение по умолчанию 3524

Команда (m для справки): p

Диск /dev/sda(b): 28.9 ГБ, 28991029248 байт
255 heads, 63 sectors/track, 3524 cylinders
Единицы = цилиндры по 16065 * 512 = 8225280 байт

Устр-во Загр Начало Конец Блоки Id Система
/dev/sdd1 1 3524 28306498+ 83 Linux
Команда (m для справки): w
Таблица разделов была изменена!
Новый раздел на новом диске созда.
Инициализируем раздел в качестве физического тома в LVM и добавляем его в группу vg_server72-lv

# pvcreate /dev/sda(b)4
Writing physical volume data to disk «/dev/sda4»
Physical volume «/dev/sda4» successfully created

Чтобы узнать название Volume Group — группа томов (объединяем физические тома (PV) в группу, создаем единый диск, который будет дальше разбивать так, как нам хочется), необходимо ввести следующую команду:

# vgdisplay
# vgextend vg_server72-lv /dev/sda(b)4
Volume group «vg_server72-lv» successfully extended

Расширяем логический том vg_server72-lv на все свободное дисковое пространство:

# lvextend -l +100%FREE /dev/mapper/ vg_server72-lv_root

Примечание: если в команду добавить ключ -r, то выполнение последующих команд можно не выполнять. Вычитал на одном из форумов. Расширение LVM тома будет выполнено совместно с увеличением дискового пространства.

Теперь расширение прошло успешно. Ресайзим корень на лету в работающей системе (обратите внимание, не всякий тип файловой системы поддерживает расширение раздела без потери информации)!

# resize2fs /dev/mapper/ vg_server72-lv_root
Filesystem at /dev/mapper/vg_server72-lv_root is mounted on /; on-line resizing required
Performing an on-line resize of /dev/mapper/ vg_server72-lv_root to 13139968 (4k) blocks.
The filesystem on /dev/mapper/ vg_server72-lv_root is now 13139968 blocks long.
Проверяем:

# df -h
Таким образом дисковое пространство увеличено.

Примечание: Расширение LVM тома на CentOS 7 на последнем шаге выдает ошибку:

# resize2fs /dev/mapper/vg_server72-lv_root
resize2fs /dev/mapper/vg_server72-lv_root
resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block while trying to open /dev/mapper/vg_server72-lv_root
Couldn’t find valid filesystem superblock

Факт оказался в том, что resize2fs умеет работать только с ext2-4 файловыми системами, а CentOS 7 ставит по дефолту xfs.
Решением же является использование xfs_growfs:
xfs_growfs /dev/mapper/vg_server72-lv_root
meta-data=/dev/mapper/vg_server72-lv_root isize=512 agcount=4, agsize=1113856 blks
. =. sectsz=4096 attr=2, projid32bit=1
. =. crc=1 finobt=0 spinodes=0
data. =. bsize=4096 blocks=4455424, imaxpct=25
. =. sunit=0 swidth=0 blks
naming. =. version 2 bsize=4096 ascii-ci=0 ftype=1
log. =. internal bsize=4096 blocks=2560, version=2
. =. sectsz=4096 sunit=1 blks, lazy-count=1
realtime.=. none extsz=4096 blocks=0, rtextents=0
data blocks changed from 4455424 to 9697280

Увеличение раздела прошло успешно.

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

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