Linux create gpt partition

Как создать 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

Источник

GPT fdisk

GPT fdisk—consisting of the gdisk, cgdisk, sgdisk, and fixparts programs—is a set of text-mode partitioning tools made by Rod Smith. They work on Globally Unique Identifier (GUID) Partition Table (GPT) disks, rather than on the older (and once more common) Master Boot Record (MBR) partition tables.

gdisk, cgdisk and sgdisk all have the same functionality but provide different user interfaces. gdisk is text-mode interactive, sgdisk is command-line, and cgdisk has a curses-based interface. This article covers gdisk(8) and sgdisk(8) utilities.

Contents

Installation

List partitions

To list partition tables and partitions on a block device, you can run the following, where device is a name like /dev/sda , /dev/nvme0n1 , /dev/mmcblk0 , etc.:

or alternatively the same action using sgdisk:

Backup and restore partition table

Before making changes to a disk, you may want to backup the partition table and partition scheme of the drive. You can also use a backup to copy the same partition layout to numerous drives.

Using sgdisk you can create a binary backup consisting of the protective MBR, the main GPT header, the backup GPT header, and one copy of the partition table. The example below will save the partition table of /dev/sda to a file sgdisk-sda.bin :

You can later restore the backup by running:

If you want to clone your current device’s partition layout ( /dev/sda in this case) to another drive ( /dev/sdc ) run:

If both drives will be in the same computer, you need to randomize the disk and partition GUIDs:

Create a partition table and partitions

The first step to partitioning a disk is making a partition table. After that, the actual partitions are created according to the desired partition scheme.

Before beginning, you may wish to backup your current partition table and scheme.

The following shows how to use gdisk to perform both the creation of a partition table and the creation of the actual partitions. Alternatively, you may use the curses-based version called cgdisk; however, the following instructions do not apply to it. See cgdisk(8) for its usage.

gdisk performs partition alignment automatically on a 2048 512-byte sector (1 MiB) block size base which should be compatible with all Advanced Format HDDs and the vast majority of SSDs if not all.

To use gdisk, run the program with the name of the block device you want to change/edit. This example uses /dev/sda :

Create new table

To create a new GUID Partition Table and clear all current partition data, type o at the prompt. Skip this step if the table you require has already been created.

Читайте также:  Windows 10 критическая ошибка меню пуск не работает кортана

Create partitions

Create a new partition with the n command. You must enter the partition number, first sector, last sector and the partition type.

Partition number

A partition number is the number assigned to a partition, e.g. a partition with number 1 on a disk /dev/sda would be /dev/sda1 . Partition numbers may not always match the order of partitions on disk, in which case they can be sorted.

It is advised to choose the default number suggested by gdisk.

First and last sector

The first and last sectors of the partition can be specified in sector numbers or as positions measured in kibibytes ( K ), mebibytes ( M ), gibibytes ( G ), tebibytes ( T ), or pebibytes ( P );

The position can be specified in:

  • absolute terms from the start of the disk. E.g. 40M as a first sector specifies a position 40 MiB from the start of the disk.
  • relative terms by preceding the size with +size or size . E.g. +2G to specify a point 2 GiB after the default start sector, or -200M to specify a point 200 MiB before the last available sector.

Pressing the Enter key with no input specifies the default value, which is the start of the largest available block for the first sector and the end of the same block for the last sector.

Partition type

Select the partition’s type by entering gdisk’s internal type code or specifying the partition type GUID manually. The default, Linux filesystem (GUID 0FC63DAF-8483-4772-8E79-3D69D8477DE4 , gdisk’s internal code 8300 ), should be fine for most use cases.

Common partition types
Partition type Mountpoint gdisk’s
code
Partition type GUID
Linux filesystem Any 8300 0FC63DAF-8483-4772-8E79-3D69D8477DE4
EFI system partition Any 1 ef00 C12A7328-F81F-11D2-BA4B-00A0C93EC93B
BIOS boot partition None ef02 21686148-6449-6E6F-744E-656564454649
Linux x86-64 root (/) / 8304 4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709
Linux swap [SWAP] 8200 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F
Linux /home /home 8302 933AC7E1-2EB4-4F13-B844-0E14E2AEF915
Linux /srv /srv 8306 3B8F8425-20E0-4F3B-907F-1A25A76F98E8
Linux /var /var 1 8310 4D21B016-B534-45C2-A9FB-5C16E091FD2D
Linux /var/tmp /var/tmp 1 8311 7EC6F557-3BC5-4ACA-B293-16EF5DF639D1
Linux LVM Any 8e00 E6D6D379-F507-44C2-A23C-238F2A3DF928
Linux RAID Any fd00 A19D880F-05FC-4D3B-A006-743F0F84911E
Linux LUKS Any 8309 CA7D7CCB-63ED-4C53-861C-1742536059CC
Linux dm-crypt Any 8308 7FFEC5C9-2D00-49B7-8941-3EA10A5586B7
  1. systemd-gpt-auto-generator(8) will only automount the partition if specific conditions are met. See systemd#GPT partition automounting for details.

Repeat this procedure until you have the partitions you desire.

Write changes to disk

Write the table to disk and exit via the w command.

Tips and tricks

Convert between MBR and GPT

gdisk, sgdisk and cgdisk have the ability to convert MBR and BSD disklabels to GPT without data loss. Upon conversion, all the MBR primary partitions and the logical partitions become GPT partitions with the correct partition type GUIDs and Unique partition GUIDs created for each partition.

After conversion, the boot loader will need to be reinstalled to configure it to boot from GPT.

This article or section needs expansion.

  • There are known corruption issues with the backup GPT on laptops that are Intel chipset based, and run in RAID mode. The solution is to use AHCI instead of RAID, if possible.

To convert an MBR partition table to GPT using sgdisk, use the -g / —mbrtogpt option:

To convert GPT to MBR use the -m / —gpttombr option. Note that it is not possible to convert more than four partitions from GPT to MBR.

Sort partitions

This applies for when a new partition is created in the space between two partitions or a partition is deleted. /dev/sda is used in this example.

After sorting the partitions if you are not using Persistent block device naming, it might be required to adjust the /etc/fstab and/or the /etc/crypttab configuration files.

Recover GPT header

In case main GPT header or backup GPT header gets damaged, you can recover one from the other with gdisk. /dev/sda is used in this example.

choose r for recovery and transformation options (experts only). From there choose either

  • b : use backup GPT header (rebuilding main)
  • d : use main GPT header (rebuilding backup)

When done write the table to disk and exit via the w command.

Expand a GPT disk

After enlarging a disk (e.g. in hardware RAID or a virtual machine disk) the newly added free space will not be immediately usable since GPT keeps data at the end of the disk. You must relocate the backup GPT header to the new end of the disk.

Читайте также:  Горячие клавиши windows два окна

Run sgdisk with the option -e / —move-second-header , e.g.:

Afterwards print the partition table; the total free space should now be increased.

Prevent GPT partition automounting

systemd-gpt-auto-generator(8) will automount partitions following the Discoverable Partitions Specification. Sometimes that may not be desirable.

The automounting can be disabled by setting the partition attribute 63 «do not automount» on the partition.

Press p to print the partition table and take note of the partition number(s) of the for which you want to disable automounting.

Press x extra functionality (experts only).

Press a set attributes. Input the partition number and set the attribute 63 . Under Set fields are: it should now show 63 (do not automount) . Press Enter to end attribute changing. Repeat this for all partitions you want to prevent from automounting.

When done write the table to disk and exit via the w command.

Alternatively using sgdisk, the attribute can be set using the -A / —attributes= option; see sgdisk(8) for usage. For example, to set partition attribute 63 «do not automount» on /dev/sda2 run:

gdisk EFI application

There is no package for the EFI version of gdisk, but Rod Smith provides a prebuilt gdisk EFI binary on SourceForge. Download gdisk-efi-*.zip and extract the archive. To use it, copy gdisk_x64.efi to the EFI system partition and launch it from your boot loader or UEFI Shell.

gdisk_x64.efi allows you to edit the partition table before the operating system is even booted. It is used the same way as the gdisk binary on Linux.

Источник

Разметка диска GPT или MBR Linux

Новый диск не имеет разметки, поэтому сначала необходимо разметить диск (создать таблицу разделов и выбратьфайловую систему — отформатировать), затем уже использовать. В табилце разметки непосредственно хранится информация о файлах и их позиции на диске..

Существует 2 типа таблиц разметки:

  • Устаревшая MSDOS (MBR) [часто обозначается как BIOS, Legacy BIOS] — главная загрузочная запись — Master Boot Record, редакторы его могут отображать как dos или msdos.
  • И современная UEFI (GPT) — GUID Partition Table.

Диск можно разметить и поделить при установке операционной системы или в случае с многими установочными образами Линукса — операционная система запускается с флешки или с диска и можно в графическом режиме разметить диски. И не только — можно наставить софта, сделать какие-то изменения и все они будут записаны при установке операционной системы (это как вариант). Т.е. под рукой всегда живой образ системы с которого можно загрузиться и что-то сделать..

В графическом режиме доступны утилиты, например Редактор разделов System — PartitionManager , или GParted , кому что больше нравится.. Ниже покажу как это можно сделать из командной строки (консоли Linux).

Смысл делить диск на разделы в Линуксе — чтоб директория /home была в отдельном разделе (папки и настройки пользователей). В случае переустановки операционной системы отформатируем первый (корень) раздел и установим недостающий софт, и вуаля все настройки программ автоматом подцепятся из /home.. Сегодня достаточно 20Гб под корень / и от 10 ГБ под /home. т.е. создаём 2 раздела на диске + EFI раздел если доступен UEFI (GPT)..

Своп (linux-swap — раздел подкачки) я не использую, начиная с Ubuntu 18.04 отказываются от раздела swap, вместо него будет использоваться файл подкачки (swapfile) . Он может понадобиться для режима сна ноутбука или если мало памяти — система менее 1 — 2 Гб памяти использует (в зависимости от сборки).. Для режима сна необходим раздел/файл подкачки = размер памяти + 2 Гб. т.е. просто добавьте запас места в корневом разделе..

Если используете SSD диск — оставляйте 10% (от 10 до 20%) места в конце неразмеченными, это продлит его ресурс, поскольку там будут проходить фоновые операции записи.. (По умолчанию на SSD диске есть скрытая область для этого, эта неразмеченная пойдёт в плюс к ней..) И судя по тестам из интернетов — эта дополнительная область увеличит IOPS — количество операций ввода и вывода, тем самым ускоряя операции с диском.

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

Вариантов намного больше, но первых 4-х вполне достаточно..

Диск с таблицей разделов MBR

Где-то в 80-х был создан формат для загрузки диска с таблицей разделов MBR, он имеет ограничение поддержки дисков объёмом до 2.2 Тб и ограничения по количеству(4) первичных (главных — primary) разделов, остальные создаются в расширенном разделе.. Необходимо выставлять флаг с какого раздела грузиться для БИОС-а компьютера, его ещё активным разделом называют.. Запись MBR занимает первые 512 байт в первом секторе на диске..

Читайте также:  Linux run as different user

В консоли создать MBR и поделить можно так (пусть диск будет 30 Гб):

Дополнения и пояснения:
# — значок комментария.
p — посмотреть разделы.
d — удалить разделы.
b — редактировать метки диска (edit bsd disklabel).

Изменяем тип таблиц на Linux (L введите чтоб уточнить, зависит от версий).
Должно по умолчанию назначаться..

Скопировать разметку на диск 2, для MBR это делается так (в случае с RAID — полезно):

Диск с таблицей разделов GPT

Диск с таблицей разделов GPT устроен по иному и имеет ряд преимуществ:

  • Размер диска может быть до 9.4 Зеттабайт, для сравнения:
    MBR=2,2Тб против GPT=10 093 173 145,6 Тб.
    Запас на будущее колоссальный, весь трафик интернета за 2016 примерно 1,1 Зеттабайт.
  • GPT допускает 2 64 = 18 446 744 073 709 552 000 основных разделов, но вот Windows допускает не более 128 разделов, хотя в реальной жизни более 3-х не используется..
  • GPT хранит копию данных раздела в конце диска и значения контрольной суммы для проверки целостности данных, позволяя восстановить их в случае повреждения основного заголовка GPT. (MBR же такого не умеет и помнится у меня были случаи повреждения этой записи под Windows.)
  • Загрузка операционной системы происходит быстрее, с UEFI быстрее инициализируется железо.. (На EFI разделе находятся драйверы аппаратных компонентов, к которым может получать доступ запущенная операционная система и в этом случае загрузка происходит прямо с этого раздела, что быстрее.)
  • Нет необходимости в boot флаге разделу.

В биосе должен быть включён режим UEFI или UEFI + Legacy ищите где-то в Boot Options (загрузка итп..), обычно спаренный режим уже включен на новом железе. Естественно грузимся из под UEFI при установке с флешки (F2, F8, F10, F11, бут меню в БИОС-е или иные)..

Если связь между оборудованием и операционной системой (ОС) осуществляется только через режим UEFI (а не Legacy BIOS), использование GPT для разбивки разделов становится практически обязательным, иначе могут быть проблемы совместимости с MBR. Советую из консоли или при помощи редактора разделов GParted итп. установить тип таблицы gpt, при установке операционной системы, установщик может по умолчанию dos поставить..

UEFI имеет собственный загрузчик операционных систем с интегрированными менеджерами их запуска. Для загрузчика UEFI на диске должен быть создан небольшой загрузочный раздел, который называется EFI System Partition , он же ESP , он же EFISYS и имеет тип EF00 .
При установке Linux будет возможность обозначить тип — системный раздел EFI.
EFI — Extensible Firmware Interface System Partition — системный раздел расширяемого интерфейса прошивки.

На дисках расширенного формата 4K Native (секторы по 4 Кб, по сути это неминуемо в будущем (сейчас 512кб в ходу), с 2010г операционные системы поддерживают новый формат) EFI должен быть не менее 256 Мб в виду ограничений FAT32, посему я делаю его с запасом = 260 Мб (этого хватит на несколько ОС на 1 диске), но можно и 100 Мб.. В интернете встречаются экспериментаторы советующие делать размер не менее 520 Мб (546 Мб), чтоб любой каприз влез, но Линукс занимает около 4 Мб.

На каждом диске может быть не более одного раздела EFI. По стандартам, раздел должен быть отформатирован в файловой системе FAT32 (для USB HDD, USB Flash могут быть поняты при загрузке более старые FAT12, FAT16 (в том числе и EFI)).

Запись GPT занимает первые 2048 секторов (1 Мб) на диске и включает в себя резерв — отступ для MBR 512 байт.

В консоли создать GPT и поделить можно так (пусть диск будет 30 Гб):

Посмотреть разметку диска:

Непосредственно работа с дисками

Тип таблиц на Linux (L введите чтоб уточнить, обозначение зависит от версий)
8200 Linux swap
8300 Linux filesystem

Копирование разметки диска для GPT (в случае с RAID — полезно):

Будьте бдительны, какому гению в голову пришло в обратном порядке выстраивать диски, точнее применять сразу после ключа -R, —replicate=second_device_filename. Поэтому запись в логичном/привычном порядке sgdisk -R /dev/sda /dev/sdb приведёт к затиранию первого диска sda, в этой форме первым пишется диск на который копируется разметка, а вторым с которого копируют.

Страница сгенерирована за 0.002534 секунды
На один процесс веб-сервера: 395 стр./сек.
Всего Apache может отдать: 101 120 стр./сек.
Выделено php памяти: 447.25 KB, real_usage: 2 MB

© Все права защищены 2004 — 2021

Карта сайта
Отслеживать изменения в Твиттере
Политика конфиденциальности

Браузер построил за сек.
Полное время сек.

Источник

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