Как изменить размер раздела centos 7

Статья рассказывает о двух способах увеличения размера раздела диска в CentOS 7: посредством утилиты fdisk и с помощью загрузочного диска GParted

Статья рассказывает о двух способах увеличения размера раздела диска в CentOS 7: посредством утилиты fdisk и с помощью загрузочного диска GParted

По умолчанию в CentOS 7 создается два основных раздела. На базе одного из них создается физический диск LVM, образующий группу разделов LVM, на основе которой создается логический раздел LVM, на который в свою очередь устанавливается операционная система

Таким образом, нам необходимо увеличить размер раздела диска, а затем — физического и логического разделов LVM


Увеличение раздела посредством fdisk


  • выключаем виртуальную машину, увеличиваем на необходимую величину объем виртуального жесткого диска и снова запускаем виртуальную машину
  • входим в интерфейс командной строки fdisk
  • fdisk /dev/sda
  • просматриваем список доступных разделов
  • p
  • по умолчанию в CentOS 7 создаются два раздела, конфигурация которых должна выглядеть подобным образом
  • Устр-во    Загр  Начало   Конец     Блоки     Id  Система
    /dev/sda1  *     2048     2099199   1048576   83  Linux
    /dev/sda2        2099200  41943039  19921920  8e  Linux LVM
    
  • удаляем раздел «Linux LVM»
  • d
  • создаем новый primary-раздел
  • n
  • Замечание: важно, чтобы созданный раздел начинался с того же сектора, что и ранее удаленный
  • изменяем тип созданного раздела на «Linux LVM» (код — 8e)
  • t
  • Замечание: просмотреть список всех типов разделов можно командой «l»
  • записываем изменения в таблицу разделов
  • w
  • перезагружаем виртуальную машину
  • увеличиваем размер физического раздела LVM до максимально возможного
  • pvresize /dev/sda2
  • увеличиваем размер логического раздела LVM до максимально возможного
  • lvextend /dev/cl_ms/root —extents +100%FREE —resizefs

Увеличение раздела с помощью GParted


  • выключаем виртуальную машину и увеличиваем на необходимую величину объем виртуального жесткого диска
  • скачиваем загрузочный диск Gparted и загружаем с него виртуальную машину
  • в программе GParted увеличиваем размер раздела диска (программа будет автоматически запущена после загрузки системы)
  • перезагружаем виртуальную машину
  • выполняем увеличение физического и логического разделов LVM описанным в предыдущем разделе способом

Появилась необходимость увеличения размера виртуальных дисков на виртуальной машине с CentOS 7. Задача простая, но все мануалы которые находятся поиском в google почему-то не работают. На деле всё достаточно просто, делается буквально несколькими командами.

Итак, имеется два виртуальных диска, системный – 16Gb, смонтированный – 5Gb. Смотрим список всех разделов, их размеры и процент использования

[root@centos7 ~]# df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 14G 9.9G 3.4G 75% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 84K 912M 1% /dev/shm
tmpfs 912M 8.9M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sdb1 4.8G 3.9G 666M 86% /mnt/mailstore
/dev/sda1 297M 152M 146M 51% /boot
tmpfs 183M 12K 183M 1% /run/user/42
tmpfs 183M 0 183M 0% /run/user/0

Средствами гипервизора увеличиваем размеры дисков, системный – 20Gb, смонтированный – 15Gb.

Смотрим таблицы разделов

[root@centos7 ~]# fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 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: 0x000c45a0

Device Boot Start End Blocks Id System
/dev/sda1 * 2048 616447 307200 83 Linux
/dev/sda2 616448 3762175 1572864 82 Linux swap / Solaris
/dev/sda3 3762176 31457279 13847552 83 Linux

Disk /dev/sdb: 16.1 GB, 16106127360 bytes, 31457280 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: 0x5d48b270

Device Boot Start End Blocks Id System
/dev/sdb1 2048 10485759 5241856 83 Linux

Размеры дисков увеличились, осталось увеличить размеры разделов. Сначала изменим смонтированный диск – в конкретном случае sdb1. Первым делом размонтируем его, потом удалим имеющийся раздел (данная операция не затрагивает хранящиеся данные на диске) и создадим его заново большего размера

[root@centos7 ~]# umount /mnt/mailstore/
[root@centos7 ~]# df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 14G 9.9G 3.4G 75% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 84K 912M 1% /dev/shm
tmpfs 912M 9.0M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 297M 152M 146M 51% /boot
tmpfs 183M 16K 183M 1% /run/user/42
tmpfs 183M 0 183M 0% /run/user/0

[root@centos7 ~]# fdisk /dev/sdb

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): d
Selected partition 1
Partition 1 is deleted

Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-31457279, default 2048): 
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-31457279, default 31457279): 
Using default value 31457279
Partition 1 of type Linux and of size 15 GiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

[root@centos7 ~]# resize2fs /dev/sdb1

resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/sdb1 is mounted on /mnt/mailstore; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 2
The filesystem on /dev/sdb1 is now 3931904 blocks long.

Монтируем диск обратно, перечитаем таблицу разделов  и проверяем размер интересующего раздела

[root@centos7 ~]# mount -t ext4 /dev/sdb1 /mnt/mailstore/
[root@centos7 ~]# /sbin/partprobe
[root@centos7 ~]# df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 14G 9.9G 3.4G 75% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 84K 912M 1% /dev/shm
tmpfs 912M 9.0M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 297M 152M 146M 51% /boot
tmpfs 183M 16K 183M 1% /run/user/42
tmpfs 183M 0 183M 0% /run/user/0
/dev/sdb1 15G 3.9G 11G 28% /mnt/mailstore

Теперь вторая половина задания, увеличим системный раздел – в текущей конфигурации sda3. Смотрим таблицу разделов, удаляем нужный, создаём его заново – большего размера

[root@centos7 ~]# 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: 21.5 GB, 21474836480 bytes, 41943040 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: 0x000c45a0

Device Boot Start End Blocks Id System
/dev/sda1 * 2048 616447 307200 83 Linux
/dev/sda2 616448 3762175 1572864 82 Linux swap / Solaris
/dev/sda3 3762176 31457279 13847552 83 Linux

Command (m for help): d
Partition number (1-3, default 3): 3
Partition 3 is deleted

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 (3762176-41943039, default 3762176): 
Using default value 3762176
Last sector, +sectors or +size{K,M,G} (3762176-41943039, default 41943039): 
Using default value 41943039
Partition 3 of type Linux and of size 18.2 GiB is set

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.

[root@centos7 ~]# /sbin/partprobe

Error: Partition(s) 3 on /dev/sda have been written, but we have been unable to inform the kernel of the change, probably because it/they are in use. As a result, the old partition(s) will remain in use. You should reboot now before making further changes.

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

[root@centos7 ~]# resize2fs /dev/sda3

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

Проблема в том, что resize2fs умеет работать только с ext2-4 файловыми системами, а CentOS7 по умолчанию создаёт разделы в файловой системе xfs. Решением является использование команды xfs_growfs

[root@centos7 ~]# xfs_growfs /dev/sda3

meta-data=/dev/sda3 isize=512 agcount=4, agsize=865472 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=3461888, 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=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 3461888 to 4772608

[root@centos7 ~]# df -h

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 19G 9.9G 8.4G 55% /
devtmpfs 898M 0 898M 0% /dev
tmpfs 912M 84K 912M 1% /dev/shm
tmpfs 912M 8.9M 903M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sdb1 15G 3.9G 11G 28% /mnt/mailstore
/dev/sda1 297M 152M 146M 51% /boot
tmpfs 183M 12K 183M 1% /run/user/42
tmpfs 183M 0 183M 0% /run/user/0

В результате получилось увеличить раздел sda3 с 14Gb до 19Gb, а монтируемый раздел sdb1 с 4,8Gb до 15Gb.

5 671

Обновлено Обновлено: 09.01.2023
Опубликовано Опубликовано: 22.06.2017

В инструкции рассмотрены сценарии расширения дискового пространства разделов в Linux без потери информации.

Принцип увеличения диска:

  1. Расширение раздела.
  2. Изменение размера файловой системы.

В зависимости от типа раздела и файловой системы, действия различаются.

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

Расширение разделов
    Обычных
    LVM
Изменение размера файловой системы
Использование GParted

Шаг 1. Расширение раздела

Мы рассмотрим варианты работы с обычными томами (разделами) и томами LVM. Проверить, какой тип раздела у нас используется можно командой:

lsblk

Нам интересны варианты part и lvm.

Обычные тома (part)

Допустим, есть диск /dev/sdb и раздел /dev/sdb2, который нужно увеличить. Разберем два подхода, сделать это.

1. С помощью утилиты growpart (без отмонтирования раздела)

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

а) Для систем DEB:

apt install cloud-guest-utils

б) Для систем RPM:

yum install cloud-utils-growpart

Если наш диск имеет разметку GPT, то потребуется установить также утилиту gdisk.

а) Для DEB:

apt install gdisk

б) Для RPM:

yum install gdisk

Установка growpart завершена. Идем дальше.

Для расширения раздела /dev/sdb2 вводим команду:

growpart /dev/sda 2

Мы должны увидеть что-то на подобие:

CHANGED: partition=2 start=4096 old: size=20965376 end=20969472 new: size=41938910 end=41943006

Готово.

2. С помощью утилиты fdisk/parted (требуется отмонтировать раздел)

Данный способ удобнее тем, что не нужно устанавливать дополнительных утилит, но он потребует отмонтирование раздела. Это можно сделать командой:

umount /dev/sdb2

В случае работы с корневой директорией, отмонтировать ее не получиться. В таком случае необходимо загрузить компьютер с Windows LiveCD или GParted Live.

Подключаемся утилитой fdisk к /dev/sdb:

fdisk /dev/sdb

Если мы работаем с разделом более чем 2Тб, используем утилиту parted.

Смотрим номера разделов:

: p

Удаляем раздел (не переживайте — все данные сохраняются):

: d

: 2

* в моем примере, раздел для удаления на второй позиции.

Создаем новый раздел:

: n

Первичный (primary):

: p

Номер раздела — 2: 

: 2

На запрос начального и конечного секторов просто нажимаем Enter.

Если раздел был загрузочный, добавляем соответствующий флаг:

: a

Еще раз проверяем, что получилось:

: p

Сохраняем изменения:

: w

LVM

LVM-тома расширяются на лету, даже для корневых разделов. В данном примере, работаем с /dev/sda.

Открываем диск утилитой fdisk:

fdisk /dev/sda

* напомню, что при работе с диском 2Тб и более, следует использовать утилиту parted.

Создаем еще один раздел:

: n

Первичный:

: p

Номер раздела оставляем тот, который предлагает система (просто нажимаем Enter).

Первый и последний сектора также оставляем по умолчанию для использования всего дискового пространства (еще два раза Enter).

Задаем тип раздела:

: t

Выбираем номер раздела (в моем примере создавался раздел 3):

: 3

Командой L можно посмотреть список всех типов, но нас интересует конкретный — LVM (8e):

: 8e

Сохраняем настройки:

: w

Проинформируем систему, что в таблице разделов произошли изменения:

partprobe

Создаем физический том из нового раздела:

pvcreate /dev/sda3

Смотрим наши Volume Group и для нужного добавляем созданный том:

vgdisplay

vgextend vg_centos /dev/sda3

* в моем примере группа томов LVM называется vg_centos

Смотрим LVM-разделы и расширяем пространства для нужного:

lvdisplay

lvextend -l +100%FREE /dev/vg_centos/lv_root

* данная команда расширяем LVM-раздел /dev/vg_centos/lv_root, используя все свободное пространство (100%FREE).

Шаг 2. Изменение размера для файловой системы

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

Посмотреть файловую систему:

df -T

ext2/ext3/ext4:

resize2fs /dev/vg_centos/lv_root

XFS:

xfs_growfs /dev/sda2

Reiserfs:

resize_reiserfs /dev/sdb

* обратите внимание, что в данных примерах используются различные устройства.

Если раздел был отмонтирован, монтируем его, например:

mount /dev/sda2 /mnt

Проверяем, что настройки применились:

df -h 

Увеличение разделов с Gparted

Если работы выполняются на системе с графическим интерфейсом или есть возможность перезагрузить сервер и загрузиться с LiveCD, можно воспользоваться простым средством — утилитой Gparted, которая позволяем менять размер разделов мышкой.

Запускаем утилиту — выбираем диск, с которым будем работать — кликаем правой кнопкой по разделу, который хотим увеличить и выбираем Resize/Move:

Изменение раздела в GParted

В открывшемся окне с помощью мышки или форм меняем размер раздела:

Уменьшение или увеличение пространства в GParted

Нажимаем кнопку Resize/Move.

Проверяем изменения в окне программы и сохраняем настройки кнопкой «Apply All Operations»:

Сохранение изменение в GParted

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

Под пользователем root и вводим следующие команды:

[root@Serverspace ~]# echo 1 > /sys/block/sda/device/rescan

С помощью fdisk выполним:

[root@Serverspace ~]# fdisk /dev/sda

Удалим раздел /dev/sda2:

Command (m for help): d
Partition number (1,2, default 2): 2

Создадим раздел:

Command (m for help): n

Выбираем тип раздела (p) — основной

Select (default p): p
Partition number (2-4, default 2): 2

Нажимаем два раза Enter — принимаем значения по умолчанию

First sector (XXX-YYY, default ZZZ):
Last sector, +sectors or +size{K,M,G} (XXX-YYY, default ZZZ):

Изменяем тип раздела

Command (m for help): t
Partition number (1-2): 2
Hex code (type L to list all codes): 8e
...

Сохраним изменения:

Command (m for help): w
Известим ядро об изменениях:

[root@Serverspace ~]# partx -u /dev/sda2

Внесем изменения в физический том:

[root@Serverspace ~]# pvresize /dev/sda2

Теперь необходимо узнать название логического тома, для этого выполним:

lvdisplay

Нас интересует название тома оканчивающееся на XXXXXXX/root (в примере ниже это /dev/centos_vg/root) запоминаем данное название

--- Logical volume ---
LV Path /dev/centos_vg/swap
....
--- Logical volume ---
LV Path /dev/centos_vg/var
...
--- Logical volume ---
LV Path /dev/centos_vg/root
...

Расширяем логический том:

[root@Serverspace ~]# lvextend -l +100%FREE /dev/XXXXXXX/root
......
Logical volume root successfully resized

Расширяем файловую систему:

[root@Serverspace ~]# xfs_growfs /dev/XXXXXXX/root

220140
Минск
ул. Домбровская, д. 9

+375 (173) 88-72-49

700
300

ООО «ИТГЛОБАЛКОМ БЕЛ»

220140
Минск
ул. Домбровская, д. 9

+375 (173) 88-72-49

700
300

ООО «ИТГЛОБАЛКОМ БЕЛ»

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Как изменить размер радара самп
  • Как изменить размер радара samp
  • Как изменить размер рабочей области фотошоп
  • Как изменить размер прошивки
  • Как изменить размер противогаза

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии