Расширение gpt диска linux

Как создать GPT-диск в Linux (носитель более 2 ТиБ)

C GPT в системах Linux работает утилита parted.

Чтобы узнать, какой именно тип диска (GPT или MBR) настроен вводим команду:

Если будет выведено предупреждение WARNING: GPT (GUID Partition Table) detected, значит используется GPT.

Также, для определения диска можно использовать gdisk, но сначала его нужно установить.

Создаем GPT

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

Откроется интерактивное меню утилиты — нажимаем p:

На экран будет выведена информация о разделах. Если они есть, удаляем командой rm:

* где 1 — номер раздела. Команду нужно повторить для всех разделов. Их список мы смотрели на предыдущем шаге командой p.
* если на разделе есть важная информация, ее нужно скопировать на другой носитель.

Создаем разметку GPT:

(parted) mklabel gpt

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

(parted) mkpart primary 0 0

* где primary указывает, что раздел является основным; 0 и 0 — использовать весь диск для создания раздела, но можно использовать часть диска, например, 0 2048GB.

Выходим из parted:

И форматируем диск:

* где в качестве файловой системы выбрана ext4.

Для проверки, монтируем отформатированный диск в директорию /mnt:

mount /dev/sdb /mnt

И выводим список дисков:

Если есть необходимость монтировать диск при загрузке системы, прочитайте статью Автоматическое монтирование дисков в Linux

Источник

Расширение диска или раздела Linux

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

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

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

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

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

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

Обычные тома

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

Сначала необходимо отмонтировать раздел:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

vgextend vg_centos /dev/sda3

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

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

Читайте также:  Драйвер звуковой карты nvidia high definition audio windows 10

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

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

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

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

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

ext2/ext3/ext4:

XFS:

Reiserfs:

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

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

mount /dev/sda2 /mnt

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

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

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

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

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

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

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

Источник

Изменение размера раздела GPT в Linux

В Linux я использовал для изменения размеров разделов MBR, используя fdisk, даже в живых файловых системах, а затем выдает resize2fs /pvresize /. (в зависимости от типа fs), чтобы получить выделенное новое пространство.

В последнее время я использую разделы Xen и GPT, и я заметил, что, к сожалению, parted, похоже, не позволяет изменять размер вмонтированного раздела на лету, на самом деле он будет жаловаться:

Я пробовал использовать команду resize и даже rm + mkpart , но они будут жаловаться на монтируемый раздел.

Как я могу это сделать?

4 ответа

Самый безопасный способ сделать это — загрузить с помощью аварийного носителя (live CD или тому подобного) и использовать GParted, который изменит размер как раздела, так и файловой системы, которую он содержит. Это будет работать, только если раздел не используется.

Если вы не можете позволить себе время простоя, вы можете попробовать использовать gdisk вместо parted . Вам нужно будет удалить раздел, который вы хотите изменить, и создать новый на своем месте с той же начальной точкой, что и в случае с fdisk . gdisk готов работать на рабочем диске, хотя ядро ​​может не регистрировать никаких изменений. В этом случае вам может понадобиться использовать partprobe или kpartx , чтобы заставить ядро ​​принять новую таблицу разделов или даже перезагрузить компьютер, если это не сработает. (Это все должно быть похоже на использование fdisk .)

Обычно это работает только с более поздними дистрибутивами Linux. Необходимые инструменты:

  • partprobe (обычно часть расставленных)
  • gdisk /sgdisk

Раздел GPT хранит заголовок резервной копии в конце диска. Если вы изменили размер базового устройства, заголовок резервной копии будет находиться где-то посередине. Первый шаг — переместить заголовок раздела в конец диска.

Предположим, что на диске есть /dev /sda, а раздел — /dev /sda3 (также должен быть последним разделом):

Затем удалите последний раздел и заново создайте его:

Обычно вы увидите сообщение о том, что ядро ​​не может перезагрузить таблицу разделов. Вам нужно запустить partprobe, чтобы раздел был зарегистрирован с новым размером:

Если это не удастся, вам придется перезагрузить виртуальную машину. После этого вы можете увеличить свою файловую систему с помощью соответствующего инструмента, для ext4 и т. Д.:

Читайте также:  Windows search не найден

Внимание : запуск sgdisk может быть разрушительным. Убедитесь, что у вас есть правильные процедуры резервного копирования.

Вот пример, который автоматизированный инструмент использует для изменения размера раздела в Интернете за один проход:

sgdisk -d 1 -n 1: 2048: 0 -c 1: -u 1: E485F29F-A1F4-4953-9DD8-799EAEA0119B -t 1: 0700 /dev /xvda

Вот список параметров команды sgdisk:

  • -d 1 первый раздел удаления
  • -n 1: 2048: 0 говорит о создании нового раздела «номер 1» с начальным сектором 2048. End sector = «0», что означает «использовать все доступное пространство для этого раздела
  • -u устанавливает уникальный указатель для этого раздела (это специфично для разделов GPT); вы можете использовать «R» для определения GUID для случайного значения. Вы также можете получить идентификатор текущего раздела с помощью gdisk /dev/xvda; p для повторного использования одного и того же uid
  • -t 1: 0700 в основном означает, что первый раздел имеет тип-код ‘0700’.

/dev /xvda — это диск, который мы переделали.

Таким образом, он сразу удаляет и создает новый раздел.

PS. Несколько заметок на typecode ‘0700’. От человека SGDISK (8)

, описанной ранее, или полностью определенное значение GUID, например EBD0A0A2-B9E5-4433-87C0-68B6B72699C7.

«Но подождите, — говорите вы, — я думал, что на диске есть раздел FAT!» В самом деле оно делает. Windows использует один GUID-код для всех своих разделов данных, будь то FAT или NTFS. Раньше тот же код использовался в Linux для его разделов данных. (Еще об этом коротко . ) Таким образом, в этом случае несколько разных MBR-кодов переведены на один GPT-GUID код. GPT fdisk использует несколько произвольно код 0x0700 (или более точно, EBD0A0A2-B9E5-4433-87C0-68B6B72699C7) для всех этих.

В моем случае я считаю, что это был раздел Linux ext4, но typecode раздела не означает тип файловой системы, поэтому «0700» больше похож на тип catchall для sgdisk. По крайней мере, в тех случаях, когда я видел.

ПФС. Возможно, вам понадобится запустить partprobe , чтобы ядро ​​стало известно об изменении раздела без перезагрузки системы.

Я просто обобщаю некоторые ответы и комментарии здесь:

parted просто откажется изменить любой смонтированный раздел. gdisk выполнит задание для вас, но оно не входит в стандартный репозиторий RHEL или CentOS. Однако он находится в репозитории EPEL .

Имейте в виду, что изменение разделов на диске, который используется, может помешать ядру зарегистрировать изменения. Если это произойдет, используйте partprobe , partx или перезагрузка.

Источник

Live изменение размера раздела GPT в Linux

В Linux я использовал для изменения размера разделов MBR, используя fdisk, даже в живых файловых системах, а затем запускал resize2fs / pvresize / . (в зависимости от типа fs), чтобы получить новое выделенное пространство.

В последнее время я использую разделы Xen и GPT, и я заметил, что, к сожалению, parted не позволяет изменять размеры подключенного раздела на лету, на самом деле он будет жаловаться:

Я пробовал и resize команду, и даже комбинацию rm + mkpart , но они оба будут жаловаться на монтируемый раздел.

Как я могу это сделать?

Самый безопасный способ сделать это — загрузиться с помощью аварийного носителя (live CD или подобного) и использовать GParted, который изменит размер как раздела, так и файловой системы, которую он содержит. Это будет работать, только если раздел в настоящее время не используется.

Если вы не можете позволить себе простои, попробуйте использовать gdisk вместо parted . Вам нужно будет удалить раздел, размер которого вы хотите изменить, и создать новый на его месте с той же начальной точкой, как вы это сделали fdisk . gdisk готов работать на используемом диске, хотя ядро ​​может не регистрировать никаких изменений. В этом случае вам может понадобиться использовать partprobe или kpartx заставить ядро ​​принять новую таблицу разделов или даже перезагрузить компьютер, если это не сработает. (Это все должно быть очень похоже на использование fdisk .)

Читайте также:  Как активировать office 2020 windows 10

Обычно это работает только с более свежими дистрибутивами Linux. Необходимые инструменты:

  • partprobe (обычно часть parted)
  • gdisk / sgdisk

Раздел GPT хранит резервный заголовок в конце диска. Если вы изменили размер базового устройства, резервный заголовок будет где-то посередине. Первый шаг — переместить заголовок раздела в конец диска.

Предполагается, что диск является / dev / sda, а раздел — / dev / sda3 (также должен быть последним разделом):

Затем удалите последний раздел и заново создайте его:

Обычно вы увидите сообщение о том, что ядро ​​не может повторно загрузить таблицу разделов. Вы должны запустить partprobe, чтобы раздел был зарегистрирован с новым размером:

Если это не удастся, вам придется перезагрузить виртуальную машину. После этого вы можете вырастить свою файловую систему с помощью соответствующего инструмента, для ext4 и т.д .:

Внимание : запуск sgdisk может быть разрушительным. Убедитесь, что у вас есть правильные процедуры резервного копирования на месте.

Вот пример, который автоматизированный инструмент использует для изменения размера раздела в сети, за один прогон:

sgdisk -d 1 -n 1: 2048: 0 -c 1: -u 1: E485F29F-A1F4-4953-9DD8-799EAEA0119B -t 1: 0700 / dev / xvda

Вот список параметров для команды sgdisk:

  • -d 1 удалить первый раздел
  • -n 1: 2048: 0 говорит о создании нового раздела «номер 1» с начальным сектором 2048. Конечный сектор = «0», что означает «использовать все доступное пространство для этого раздела
  • -u устанавливает уникальный guid для этого раздела (это характерно для разделов GPT); Вы можете использовать «R» для GUID, чтобы установить случайное значение. Вы также можете получить идентификатор текущего раздела через gdisk /dev/xvda; p вывод, чтобы повторно использовать тот же UID
  • -t 1: 0700 означает, что первый раздел имеет тип-код ‘0700’.

/ dev / xvda был диском, который мы переделили.

Таким образом, он сразу удаляет и создает новый раздел на своем месте.

PS. Несколько заметок о типе ‘0700’. От мужчины SGDISK (8)

описанный ранее, или полностью указанное значение GUID, например, EBD0A0A2-B9E5-4433-87C0-68B6B72699C7.

Здесь вы найдете лучшее объяснение того, что означает «0700» — http://www.rodsbooks.com/gdisk/walkthrough.html

«Но подождите, — говорите вы, — я думал, что на диске есть раздел FAT!» Это действительно так. Windows использует один код GUID для всех своих разделов данных, будь то FAT или NTFS. В прошлом тот же код использовался в Linux для его разделов данных. (Подробнее об этом чуть позже . ) Таким образом, в этом случае несколько разных кодов MBR преобразуются в один код GUID GPT. GPT fdisk использует несколько произвольно код 0x0700 (или, точнее, EBD0A0A2-B9E5-4433-87C0-68B6B72699C7) для всех этих целей.

В моем случае я считаю, что это был раздел ext4 в Linux, но typecode раздела не означает тип файловой системы, поэтому «0700» больше похож на универсальный тип для sgdisk. По крайней мере, в тех случаях, которые я видел.

PPS. Вам может потребоваться запустить partprobe ядро, чтобы узнать об изменении разделов без перезагрузки системы.

Источник

Оцените статью