Fast Site Engine
Высокопроизводительный движок для сайтов
Заказать сайт на основе движка
О движкеПроизводительностьБезопасностьТехнические требованияSEO 
Лицензионное соглашение
Демо
Установка
Панель управления
Модули
Документация
Шаблоны
Тесты производительности php
Планы на будущее
Список изменений
Отзывы и пожелания
Переходим на Линукс
Всякое разное
Переходим на Линукс  »  Разметка диска GPT или MBR 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 - количество операций ввода и вывода, тем самым ускоряя операции с диском ..

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

# перечислит тома на диске, подробно с точками монтирования и удобным размером
df -h
# подробная информация о всех дисках
sudo fdisk -l
# о конкретном диске
sudo fdisk -l /dev/sda
# перечислит диски, тома и размер оных
cat /proc/partitions
# только диски
fdisk -l
# диски и размер
sudo sfdisk -s

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

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

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

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

sudo fdisk /dev/sda
# создать новую таблицу разделов MBR
o
# создаём разделы
n: enter (default p), enter (default 1), enter, +20G
n: enter (default p), enter (default 2), enter, +7G
# остаток 10% неразмечен для SSD или
#n: enter (default p), enter (default 2), enter, enter

# устанавливаем boot flag (флаг загрузочного раздела) у корневого раздела.
a: 1
# применить - записать изменения, q - выйти без изменений
w

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

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

t: 1, 83 (или 20).
t: 2, 83.

# отформатировать (создать файловую систему)
sudo mkfs.ext4 -L 'mylabel1' /dev/sda1
sudo mkfs.ext4 -L 'mylabel2' /dev/sda5

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

sudo sfdisk -d /dev/sda | sudo sfdisk /dev/sdb

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

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

  • Размер диска может быть до 9.4 Зеттабайт, для сравнения: MBR=2,2Тб против GPT=10 093 173 145,6 Тб. Запас на будущее колоссальный, весь трафик интернета за 2016 примерно 1,1 Зеттабайт.
  • GPT допускает 264 = 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 байт на диске и включает в себя резерв - отступ для MBR 512 байт.

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

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

# перечислит тома на диске, подробно с точками монтирования и удобным размером
df -h
# подробная информация о всех дисках
sudo fdisk -l
sudo gdisk -l /dev/sda
# разметка и флаги
sudo parted /dev/sda print

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

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

sudo gdisk /dev/sda
# p - посмотреть разделы
# d - удалить разделы

# создаём новую таблицу GPT
o: y
# создаём разделы
n: enter (default 1), enter, +260M, ef00
n: enter (default 2), enter, +20G, enter (8300)
n: enter (default 3), enter, +7G, enter (8300)
# остаток 10% неразмечен для SSD или
#n: enter (default 3), enter, enter, enter (8300)
# сохраняем
w: y
# Проверям
sudo parted /dev/sda print

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

# sgdisk [от куда] [ключ] [куда]
sudo sgdisk /dev/sda -R /dev/sdb

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

Страница сгенерирована за 0.003312 секунды
На один процесс веб-сервера: 302 стр/сек.
Всего Apache может отдать: 77 312 стр/сек.
Выделено php памяти: ~ 2MB

© Все права защищены 2004 - 2018
Карта сайта
Отслеживать изменения в Твиттере

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

С момента выгрузки предыдущей страницы из памяти браузера: сек.