Меню

Таблица разделов msdos и mbr



msdos или gpt?

Приветствую! Есть аппаратный RAID 10 массив из 4-х sas винтов общим объемом 1.2ТБ, собираюсь ставить с нуля систему, собственно какую таблицу разделов выбрать? Хотел традиционно msdos выбрать, так-как массива больше 2ТБ не будет, но вроде msdos уже отходит в прошлое и сейчас все переходят на GPT? Выиграю ли я в чем-то если выберу GPT? Кроме поддержки больших объемов? Посоветуйте что лучше в моем случае? ОС будет CentOS 6.2.

Грузиться с него будешь? Если да, то MBR. Чтобы грузится с GPT с BIOS нужны всякие шаманские обряды вроде protective MBR или что-то в этом роде.

так-как массива больше 2ТБ не будет
Выиграю ли я в чем-то если выберу GPT?

Не выиграешь ничего.

Да грузиться буду, собственно сам массив будет загрузочным + натяну LVM.

Ну, на данном этапе нет, но если массив будет расширятся больше 2Тб, то выигрышь есть.

Если и будет, то максимум добавятся два винта по 600G, тобишь массив увеличится на 600G и общий объем составит

Разве с GPT без бубна нельзя грузиться?

Чтобы грузится с GPT с BIOS нужны всякие шаманские обряды вроде protective MBR или что-то в этом роде.

Чтобы грузиться с GPT в BIOS ничего не нужно.

Всё зависит от ОС и загрузчика. GRUB1 официально не поддерживает GPT. А еще и от биоса. http://www.rodsbooks.com/gdisk/bios.html

«Ну ты смогла бы, если б хотела» (из какой то рекламы). Выбрав ms-dos ты не сможешь более 2tb. В случае с GPT — сможешь, если захочешь, лол. Я на будущее заранее заложился на рост более 2tb, ибо винты дешевеют (ну не прямо сейчас, в перспективе) + LVM облегчает наращивание массива. Да и ms-dos — рудимент ныне. С загрузиться никаких проблем, EFI биос не обязателен. Так что рекомендую GPT. Выиграть прямо сейчас — ничего не выиграешь, потерять — не потеряешь, на перспективу нужнее GPT. (Правда не знаю, нужно ли для GPT выравнивание массива и если нужно — как это делать)

Про «никаких проблем» погорячился, blind_oracle прав. Однако на относительно свежем железе проблем уже нет.

GPT типа того, приходит. Да. Вообще можно создать раздел на 100-200 Мб, многие контроллеры сами умеют создавать загрузочный раздел, а остальное место больше 2ТБ у тебя будет отдельно.

Для загрузки с носителя, содержащего GPT-разметку, не нужно специального BIOS. Достаточно небольшого загрузчика-«затычки» по типу фришного pmbr, который прописывается в область псевдо-MBR таблицы разметки GPT и при загрузке ищет код в разделе GPT с типом загрузочного.

Для Linux почему-то не определён тип загрузочного раздела GPT: http://ru.wikipedia.org/wiki/Таблица_разделов_GUID

Согласен, но в моем случае даже если я забью всю корзину 8-ю дисками размер массива не превысит 2.2ТБ. Меня больше интересует какие плюсы есть у GPT кроме как поддержка больших массивов и возможность создать 128 разделов.

Пробовал как-то на Фре 8-х версии погонять ZFS, интересно было, так там да, пришлось повозиться чтобы загружаться можно было с gpt раздела.

если есть возможность поставь два винта гигов по 146 на систему, можно SATA чтобы подешевле. Я так и сделал. На системе «зеркало» из 2-х 146 гиг и 11 ТБ (RAID-6) отдельным разделом, естественно GPT.

биос не причем и грузиться тоже не будет по крайней мере на той системе что у него, т.е. CentOS

Грузиться будет, в 6-й версии GRUB умеет грузиться с GPT.

Мне смысла нет так делать, у меня все 4 винта по 600GB SAS, мне надо RAID10.

Нет вроде больше плюсов. С эстетической точки зрения GPT более прям и красив. Однако это нивелируется потенциальными несовместимостями. Лежащий сверху LVM является основным объектом манипуляций, собственно с разделами ты в этом случае соприкасаешься один раз — при создании. Так что если том никак никогда не превысит 2tb можно не заморачиваться. Однако лично я зарёкся делать предположения на будущее о размерах массива, был уже негативный опыт, лол (640кб хватит для всех, ага), и выбрал GPT, так как у меня никаких проблем с совместимостью нет и мне вобщем всё равно какие разделы, просто GPT перспективнее.

В итоге остановился на GPT, CentOS 6.2 без проблем загрузилась. Всем спасибо за советы!

GPT Partitions

Newer, preferred format for Linux systems
Supports 2TB+ hard drives for booting
Supports hundreds of partitions per disk of any size
Requires extra GRUB boot loader partition to be created (

32MB)
GRUB 1.9x required to boot if system disk

MBR Partitions

Legacy, DOS and Windows XP-compatible partition scheme
Only 4 primary partitions per disk; after that, you must use «logical» partitions
Does not support 2TB+ disks for booting
More compatible with certain problem systems (such as HP ProBook 4520)
Multiple boot loader options: GRUB 1.9x, grub-legacy, lilo, etc.

Чтобы грузится с GPT с BIOS нужны всякие шаманские обряды вроде protective MBR или что-то в этом роде.

GPT для совместимости делает тот самый protective MBR, в которой указан один primary раздел какого-то там типа, который забит для GPT. Оффтопик не умеет загружаться с GPT в отсутствие EFI, но это проблемы оффтопика.

Источник

Bog BOS: hardware: Таблицы разделов MBR и GPT

Чтобы ОС могла интерпретировать данные на блочном устройстве хранения, необходимо в заранее определённом месте хранить в стандартизованном формате информацию о структуре хранения. Таких форматов (VTOC — Volume Table Of Content — оглавление тома, disklabel — метка тома, таблица разделов) имеется множество,например, утилита parted распознаёт следующие форматы таблицы разделов: aix, amiga, bsd, dvh, gpt, loop, mac, msdos (MBR), pc98, sun. Блочное устройство может быть использовано целиком, без разбиения на разделы. Раздел является блочным устройством.

Блочное устройство хранения может адресовать блоки (сектора) методом CHS (цилиндр, головка, сектор) или LBA (Logical Block Address — монотонное возрастание номера блока от 0 до максимального). Возможна явная или неявная трансляция от реальной геометрии CHS в воображаемую геометрию CHS или LBA с целью обхода ограничений адресации (например, BIOS ограничивает количество цилиндров 1024, но позволяет 256 (255) головок, ATA устройство позволяет иметь не более 16 головок, но 65535 цилиндров). Учитывая, что современные дисковые устройства имеют зонную структуру (переменное количество секторов на дорожке), а SSD не имеют головок и цилиндров вовсе, CHS адресация используется исключительно для совместимости.

Размер блока (сектора) долгое время был равен 512 байтам (522 или 528 для хранения дополнительных контрольных сумм), но сейчас физический размер блока 4096 байт для дисковый устройств и значительно больше для SSD. Наружу устройство может показывать 512n (реально блоки по 512 байт), 512e (физические блоки по 4096 байт, но устройство позволяет адресовать с дискретностью 512, однако запись в середину физического лока наказывается временем), 4096 (физические блоки по 4096 байт адресуются по 4096 байт).

Настройка BIOS (BIOS Setup) должна иметь средства выбора устройства загрузки.

Формат MBR (master boot record), иногда называемый msdos, используется с 1983 года (PC DOS 2.0). По адресу 0-0-1 (CHS) или LBA 0 расположена MBR (master boot record), содержащая программу главного загрузчика (446 байт, 424 для Legacy MBR?) и таблицу разделов на 4 описателя разделов (16 байт каждый), последние 2 байта содержат 0x55 и 0xAA (BIOS проверяет их перед передачей управления). Описатели разделов не обязаны заполняться поочерёдно. Legacy MBR также содержит уникальный 32-битный идентификатор диска. Место после 512 байта не используется.

Описатель раздела задаёт флаг активности, границы разделов в системах CHS (начало, конец, по 3 байта) и LBA (начало, длина, по 4 байта), системный код. По традиции раздел начинал с границы цилиндра N-0-1, кроме первого, который начинается по адресу 0-1-1. Учитывая повсеместное использование трансляции адресов (63 сектора на дорожку) адрес 0-1-1 CHS превращается в 63 LBA, что плохо влияет на производительность устройств с блоками 512e. Поэтому традиция изменилась на размещение начала первого раздела по адресу 2048 LBA для устройств с блоками 512n и 512e. В Linux нумеруются с 1 до 4 (/dev/sda1).

Размер адреса LBA (32-бита) в сочетании с традиционным размером сектора в 512 байт ограничивает размер блочного устройство для MBR в 2 ТБ.

Системный код (1 байт) определяет тип файловой системы или тип использования (длинный список можно получить командой l утилиты fdisk), например:

  • 0x00 — пустой описатель
  • 0x01, 0x04, 0x06, 0x0b, 0x0c, 0x0e — 0xFAT
  • 0x05, 0x0f — расширенный раздел
  • 0x07 — NTFS, exFAT
  • 0x82 — Linux swap
  • 0x83 — Linux
  • 0x85 — Linux extended (вторая цепочка расширенных разделов)
  • 0x86, 0x87 — NTFS volume set
  • 0x8e — Linux LVM
  • 0xa5 — FreeBSD
  • 0xa6 — OpenBSD
  • 0xaf — HFS
  • 0xbe, 0xbf — Solaris
  • 0xee — GPT
  • 0xef — EFI System Partition (выглядит как FAT-12/16/32)
  • 0xfd — Linux raid auto
Читайте также:  Периодическая таблица менделеева что такое период группа

Флаг активности (1 байт, 0x80 — активный) позволяет главному загрузчику выбрать раздел для загрузки. Он может быть установлен только у одного раздела. Главный загрузчик может иметь свои методы настройки. Предполагается, что главный загрузчик ищет адрес первого сектора активного раздела, загружает его в память и передаёт управление на его начало. Однако, главный загрузчик может иметь свои методы настройки, см. GRUB и GRUB2.

Один из разделов (системный код — 5 или 0xf или 0x85) может содержать расширенную таблицу разделов (EPR, Extended Partition Record, EBR, EPBR), аналогичную MBR, в котором первый описатель задаёт вторичный (secondary) раздел, содержащий файловую систему и т.п., а второй описатель указывает адрес следующего EPR и т.д. пока есть место на диске. Третий и четвёртый описатели не используются. Адреса указываются относительно EPR (?!). Цепочка EPR должна быть непрерывной, неветвящейся и незацикленной. Расширенные разделы физически являются вложенными друг в друга. В Linux нумеруются с 5 до 16 (/dev/sda5), контейнеры EPR кроме первого не учитываются в нумерации.

Редактировать MBR можно утилитами fdisk, parted, cfdisk, sfdisk.

Размер сектора нигде не укаывается .

Для загрузки UEFI требуется EFI System Partition в формате MBR.

Утилита «blockdev —reread устройство» позволяет информировать ядро о необходимости перечитать таблицу разделов.

Утилита «partprobe устройство» информирует ядро об изменении таблицы разделов.

Посмотреть список всех разделов: «cat /proc/partitions», блочных устройств: «blkid -o list».

Утилита partx позволяет исследовать таблицу разделов и добавить (удалить) раздел в таблицу разделов ядра (не создаёт раздел на диске!):

  • —help
  • —show [раздел|-] [диск] # «partx —show — /dev/sda3» — трактовать раздел 3 как целиковый диск со своей таблицей разделов
  • —verbose
  • —type
  • —bytes # размер в байтах, а не секторах
  • —add [раздел|-] [диск]
  • —delete [раздел|-] [диск]
  • —update [раздел|-] [диск]

Утилита fixparts позволяет починить таблицу MBR.

GPT (GUID — Globally Unique IDentifier — Partition Table) разрабатывался как часть UEFI (Unified Extensible Firmware Interface) вместо связки BIOS-MBR, позволяет форматировать диски до 8 ЗиБ (LBA 64 бит вместо 32 бит у MBR).

GUID является статистически уникальным 128-битным идентификатором, иногда называется UUID, не требует централизованной службы для регистрации идентификаторов, генерируется на месте при необходимости, текстовое представление и алгоритмы генерации описываются RFC-4122 (little-endian). Повсюду используется little endian.

Первый сектор диска (LBA 0) содержит фиктивную MBR (protective MBR), описывающую 1 раздел типа EFI GPT (системный код — 0xee) размером с весь диск (по возможности или 0xFFFFFFFF). Второй сектор диска (LBA 1, заголовок диска) содержит: сигнатуру («EFI PART»), версию GPT (пока 1, 4 байта), размер заголовка (4 байта), контрольную сумму CRC32 остатка заголовка (4 байта), резерв (4 байта), собственный LBA адрес (8 байт), адрес LBA вторичного заголовка (8 байт), LBA адрес начала доступной области (8 байт), LBA адрес конца доступной области (8 байт), GUUID диска (16 байт), адрес LBA основной таблицы разделов (8 байт), допустимое количество разделов (4 байта), размер описания раздела (128, 4 байта), контрольную сумму CRC32 основной таблицы разделов (4 байта), нули до конца сектора.

Основная таблица разделов (Partition Entry Array) хранит информацию о 128 разделах (Microsoft) или 256 (Linux, нумеруются с 1), размер таблицы разделов не стандартизован, но не менее 16 КиБ. Для каждого раздела хранится GUID типа раздела (16 байт), GUID раздела (16 байт), LBA адрес начала (8 байт), LBA адрес конца (8 байт), атрибуты (8 байт), имя (72 байта, 36 символов UTF-16LE). Атрибуты:

  • бит 0 — раздел требуется для поддержания работоспособности платформы
  • бит 1 — прошивка UEFI не должна читать отсюда (не привязывать EFI_BLOCK_IO_PROTOCOL)
  • бит 2 — загрузочный раздел для BIOS (менеджер загрузки UEFI должен игнорировать этот раздел)
  • биты 48-63 — для частного использования, в частности для Microsoft:
    • бит 60 — только чтение
    • бит 61 — Shadow copy
    • бит 62 — скрыто
    • бит 63 — нет буквы/автоматического монтирования)

Вторичный заголовок (последний сектор диска) содержит GUID диска, собственный LBA адрес, собственный размер, LBA адрес запасной таблицы разделов, LBA адрес заголовка диска, размер доступной области, контрольную сумму CRC32 себя и запасной таблицы разделов, допустимое количество разделов. Запасная таблица разделов идентична основной.

GUID типа определяет тип файловой системы или тип использования (длинный список можно получить командой l утилиты gdisk, двухбайтовые версии), например:

  • 00000000-0000-0000-0000-000000000000, 0x0000 — пустой описатель
  • EBD0A0A2-B9E5-4433-87C0-68B6B72699C7, 0x0700 — Microsoft basic data
  • 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F, 0x8200 — Linux swap
  • 0FC63DAF-8483-4772-8E79-3D69D8477DE4, 0x8300 — Linux filesystem
  • E6D6D379-F507-44C2-A23C-238F2A3DF928, 0x8e00 — Linux LVM
  • 48465300-0000-11AA-AA11-00306543ECAC, 0xaf00 — Apple HFS/HFS+ и пр.
  • C12A7328-F81F-11D2-BA4B-00A0C93EC93B, 0xef00 — EFI System
  • 024DEE41-33E7-11D3-9D69-0008C781F39F, 0xef01 — MBR partition scheme
  • 21686148-6449-6E6F-744E-656564454649 («Hah!IdontNeedEFI»), 0xef02 — BIOS boot partition
  • AA31E02A-400F-11DB-9590-000C2911D1B8, 0xfb00 — VMWare VMFS
  • A19D880F-05FC-4D3B-A006-743F0F84911E, 0xfd00 — Linux RAID
  • 44479540-F297-41B2-9AF7-D131D5F0458A — Linux Root partition (x86)
  • 4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709 — Linux Root partition (x86_64)
  • CA7D7CCB-63ED-4C53-861C-1742536059CC — LUKS

Для загрузки UEFI требуется EFI System Partition в формате GPT.

Загрузчик LILO не умеет работать с GPT.

GRUB2 (и GRUB 0.97 с заплатками) умеет грузиться с GPT.

При загрузке Linux из BIOS при использовании GPT возникает проблема размещения второй стадии загрузчика (core.img), который при использовании MBR хранился между MBR и первым разделом. Для её решения создаётся вспомогательный раздел biosboot размером 1 MiB, в который и записывается программа загрузки второй стадии, которая понимает формат GPT и может быть запущена с помощью первичного загрузчика (boot.img) из защитной MBR. Раздел содержит бинарный код размером около 30 КБ без файловой системы. Поддерживается утилитами gdisk и parted. Установщик anaconda умеет его создавать, в т.ч. с использованием kickstart (bootloader, reqpart и «partition biosboot»).

SYSLINUX 4.00 использует gptmbr.bin для загрузки из BIOS — записывается в защитную MBR на место загрузчика, д.б. готова к разбору GPT и сектору не 512 байт (Hybrid MBR, защитная MBR описывает до 3 разделов).

Редактировать GPT можно утилитами gdisk, parted.

Посмотреть список всех разделов: «cat /proc/partitions», блочных устройств: «blkid -o list».

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

EFI System Partition (ESP, /boot/efi после загрузки) — раздел MBR или GPT (в El Torito тоже есть), размером 50 MiB, а лучше 200 MiB. Используется UEFI для загрузки ОС, содержит файловую систему FAT32 (точнее собственный стандарт на основе подмножества FAT) или FAT16 или FAT12, в которой хранятся загрузчики, образы ядра и драйверы, а также утилиты и журналы. Первый сектор раздела содержит загрузчик, который может быть использован BIOS или UEFI в режиме CSM (Compatibility Support Module). Некоторые реализации UEFI самостоятельно переключаются в режим CSM встретив ESP раздел для MBR. GRUB2 и elilo будучи загруженными UEFI с раздела ESP продолжают загрузку ядра самостоятельно с поддерживаемых ими устройств и файловых систем.

Синтаксис имён файлов соответствует FAT (8.3, ASCII, всегда прописные) с расширением длинных имён (LFN, ASCII или UCS-2, нет поддержки UTF-16) — каталог отделяется символом «\», регистр букв не принимается во внимание (‘A’ и ‘a’). Выделенные имена файлов: «.», «..».

Атрибуты файлов: только чтение, скрытый, системный, каталог, архив.

ESP содержит каталог /EFI, в котором размещаются каталоги BOOT (загрузчик последней надежды bootx64.efi для архитектуры x86_64, не должно быть других файлов для той же архитектуры) и каталоги загрузчиков (Microsoft/BOOT/bootmgfw.efi, redhat, ubuntu, centos и т.д.). /efi/boot/bootstr.nvr может содержать EFI переменные.

fdisk — интерактивная программа (текстовая) для манипуляций с MBR. В качестве параметра указывается блочное устройство. Понимает таблицы разделов dos (MBR), BSD и sun. В режиме совместимости создаваемые разделы выравниваются на границу цилиндра, иначе на границу МиБ. Изменения хранятся в памяти и записываются на устройство только перед завершением с записью («w»), после чего вызывается sync() и ioctl(BLKRRPART) — ядро перечитывает таблицу разделов с устройства. Ключи:

  • -h # краткая справка
  • -v # версия программы
  • -l # вывести список разделов и их атрибутов (имя устройста, флаг активности, начальный сектор, последний сектор, размер в блоках 1КиБ, тип, описание типа) и завершить работу
  • -u[=] # единица измерения
  • -c[=] # режим совместимости, dos — раньше была адресация C/H/S, сейчас осталось только выравнивание
  • -b размер-сектора # принимает на веру для физического и логического размера сектора

sfdisk — командный интерфейс для fdisk.

cfdisk — текстовое меню (curses) для fdisk.

gdisk (GPT fdisk) — интерактивная программа (текстовая) для манипуляций с GPT. В качестве параметра указывается блочное устройство. Понимает таблицы разделов GPT. Преобразует MBR и BSD disklabel в GPT с защитной MBR (код начального загрузчика не портится, но может потребоваться переустановка загрузчика для завершения загрузки) или гибридной MBR. Изменения хранятся в памяти и записываются на устройство только перед завершением с записью («w»), после чего вызывается sync() и ioctl(BLKRRPART) — ядро перечитывает таблицу разделов с устройства. Ключ «-l» выводит список разделов и их атрибутов (номер раздела, начальный сектор, последний сектор, размер, код в понимании gdisk) и завершает работу. Команды:

sgdisk — командный интерфейс для gdisk.

cgdisk — текстовое меню (curses) для gdisk.

Утилита parted позволяет создавать, удалять, копировать, перемещать и изменять разделы в форматах msdos, gpt, loop, sun, mac, bsd и pc98, а также файловые системы на них (ext2, ext3, fat16, fat32, linux-swap) в интерактивном и пакетном режимах. Не рекомендуется менять таблицу разделов используемого блочного устройства. Единицы измерения могут задаваться суффиксом параметра или командой «unit» (отрицательное число — отсчитывается от конца диска, например «-1s» — это последний сектор):

  • s — сектор
  • cyl — цилиндр (в геометрии BIOS, нельзя задавать как суффикс)
  • chs — цилиндр,головка,сектор (в геометрии BIOS, нельзя задавать как суффикс)
  • %
  • B — байт
  • kB или K (10^3)
  • KiB
  • MB или M (10^6)
  • MiB
  • GB или G (10^9)
  • GiB
  • TB или T (10^12)
  • TiB

Команды:

  • help
  • quit (изменения могут вноситься немедленно, но ОС узнаёт о них только по команде «quit»)
  • align-check раздел (проверить выровненность разделов)
  • удалена в версии 2.4: check номер-раздела (проверить файловую систему на разделе)
  • удалена в версии 2.4: cp [исходное-устройство] исходный-раздел раздел-назначения (копировать файловую систему)
  • mklabel (создать таблицу разделов)
  • mkpart [тип-файловой-системы] начало конец (создать раздел для файловой системы, тип файловой системы: btrfs, ext2, ext3, ext4, fat32, fat16, hfs+, hfs, linux-swap, ntfs, reiserfs, xfs; где lvm и прочее?)
  • удалена в версии 2.4: mkfs номер-раздела тип-файловой-системы
  • удалена в версии 2.4: mkpartfs тип-файловой-системы начало конец (создать раздел и файловую систему: ext2, fat16, fat32, linux-swap)
  • удалена в версии 2.4: move номер-раздела начало конец (передвинуть раздел с файловой системой, старое и новое место не могут пересекаться)
  • name номер-раздела имя-раздела (задать имя раздела для таблиц разделов в форматах GPT, Mac, PC98; можно использовать апострофы для задания строки с пробелами)
  • print [номер-раздела | all | free] (вывести информацию о диске, разделе, всех дисках или свободном месте)
  • rescue начало конец (если parted находит следы пропавшего раздела в указанном интервале адресов, то она пытается его восстановить)
  • удалена в версии 2.4: resize номер-раздела начало конец (изменение размера раздела вместе с файловой системой: ext2/ext3 — начало раздела менять нельзя; fat16; fat32; hfs/hfs+/hfsx — начало раздела менять нельзя, размер можно только уменьшать; linux-swap; разделы с непонятным содержимым — PV для LVM — менять отказывается, остаётся только удалить и создать заново, надеясь ничего не порушить, или создавать второй раздел рядом и клеить lvm2)
  • rm номер-раздела (при удалении логического раздела в таблице формата msdos, последующие разделы будут перенумерованы)
  • select устройство (сменить блочное устройство для последующих команд)
  • set номер-раздела имя-флага (флаги — это не атрибуты GPT!:
    • bios_grub (раздел biosboot)
    • boot (загрузочный раздел для MBR)
    • root (MAC, системный раздел Linux)
    • lba (для MBR, логическая адресация)
    • hidden (скрывать от MS Windows)
    • swap (MAC)
    • raid (программный RAID, только для формата MBR)
    • LVM (только для формата MBR)
    • legacy_boot (для GPT)
    • PALO (MBR, загрузчик Linux/PA-RISC)
    • PREP (MBR и GPT, загрузчик PReP PowerPC)
    • DIAG (MBR, раздел диагностики и восстановления)
  • toggle номер-раздела имя-флага
  • disk_set pmbr_boot (флаг активности раздела в защитной MBR)
  • unit единица-измерения

Ключи:

  • —help
  • —version
  • —list # вывести список разделов
  • —script # не задавать вопросов
  • —align

Создание разделов более 2ТБ:

Bog BOS: hardware: Таблицы разделов MBR и GPT

Источник

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

Сначала про разделы на диске

MBR и GPT – это не разделы. Это способ образования разделов на диске, тип MBR/GPT относится в целом к диску.

Вот хорошая статья на Хабре

MBR (MASTER BOOT RECORD)

главная загрузочная запись содержит таблицу разделов, которая описывает, как разделы расположены на диске. С этим типом разделения первый сектор на жестком диске содержит главную загрузочную область и файл двоичного кода, названный кодом начальной загрузки загрузчика. С типом разделов MBR диски поддерживают тома до 2 терабайт и используют один из двух типов разделения:

Boot-сектор MBR имеет размер 512 байт и расположен в самом начале диска. Там находится исполняемый код (которые передает управление непосредственно загрузчику) и вся таблица разделов.

Вот так MBR подробнее:

Смещение Длина, байт Описание
0000h 446 Код загрузчика boot-сектор
01BEh 16 Раздел 1 Таблица разделов
01CEh 16 Раздел 2
01DEh 16 Раздел 3
01EEh 16 Раздел 4
01FEh 2 Сигнатура (55h AAh)

На сам исполняемый код отводится 446 байт (тот самый boot-сектор), а остальные 66 байт – на разметку диска.

Отсюда две важные заметки для диска MBR:

  • используйте для разных операционных систем (и данных) разные диски с разметкой MBR, в противном случае из-за борьбы установщиков за boot-сектор (и кривизны рук разработчиков) может быть полностью переписан весь раздел MBR в 512 байт, таблицы разделов погибнут = и Вы полностью потеряете всю информацию с диска
  • для любителей Linux – если всё сломалось, появились кривые разделы (которые не удаляются стандартными средствами) = запускаете LiveCD Linux и через терминал с помощью соответствующей команды забиваете все 512 байт нулями – в результате диск “забудет” про всю разметку (и все данные) и будет снова готов к Вашим опытам

У каждого диска MBR может быть:

  • до четырех Primary разделов или
  • три Primary раздела и один раздел Extended.

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

В MBR используется адресация, зависимая от геометрии диска. Адрес собирается из трех значений головка, цилиндр и сектор (например 0,0,0)

Возможность разбивать раздел Extended на логические диски позволяет Вам распределять физический диск на нужное число разделов (без возможности загрузки с этих разделов).

Как установить несколько разных OS Windows на диск с MBR – читаем в статье

GPT (GUID Partition Table)

имеет два основных раздела и один или более дополнительных раздела:

EFI system partition (ESP)

Microsoft Reserved partition (MSR)

At least one data partition (разделы с данными)

Диски GPT поддерживают тома до 18 эксабайт (1024 петабайт или 1048576 терабайт) и 128 разделов.

В GPT используется адресация LBA. Это блочная адресация, каждый блок имеет свой номер, например LBA1, LBA2, LBA3, и так далее, при чем адреса MBR автоматически транслируются в LBA, например LBA1 будет иметь адрес 0,0,1 и так далее.

Данную схему организации разделов на диске поддерживают:

  • с Widows XP – только работа с данными
  • с Windows 8 – загрузка и работа с данными

GPT не содержит кода загрузчика. Этим будет заниматься UEFI BIOS, здесь размещена только таблица разделов. В блоке LBA0 находится MBR, это сделано для защиты от затирания GPT старыми утилитами работы с дисками.

И такое дело – MBR поддерживает диски только до 2,2 Тб.
Например для диска на 4 Тб:

а) BIOS старый, диск GPT, Windows XP и старше = можно использовать все 4 Тб только под хранение данных как отдельный диск в системе, загрузка невозможна
б) BIOS UEFI, диск GPT, Windows 8 и старше = можно использовать диск 4 Тб и как загрузочный
в) BIOS старый, диск GPT, Windows XP и младше = диск будет виден в системе, но данные с него не прочитать = или костыли и танцы с бубном или структура разделов MBR и разбиение на два раздела по 2 Тб

Сравнительная таблица MBR vs GPT

“Костыли” для GPT

Для загрузки с GPT системам Windows нужно:

  • BIOS UEFI
  • 64 bit разрядность системы

И что делать, если у нас могучий сервер (нужно большое дисковое пространство) – а в наличии только железо с BIOS?

Правильно – использовать костыль!

  • устанавливаем Windows на диск с MBR (система не разрешит установку на диск с GPT на BIOS)
  • сторонней утилитой конвертируем разметку диска в GPT
  • итого у нас система Windows установлена на GPT
  • но загрузки конечно нет – т.к. нет boot-сектора MBR (точнее он есть – но заблокирован от записи)
  • но нам очень надо – и у нас есть флешка или другой диск с MBR
  • делаем там boot-сектор MBR (что было куда обратиться BIOS для старта) и передаем управление загрузчику ОС (который уже на диске с GPT)

Вот тут подробнее:

Внимание! Есть большая путаница в названиях. “Скрытый раздел” не видит система и с него нельзя загрузиться, даже если он активный. Раздел Win7 System Recovery на самом деле не скрытый (система с него грузится), у него просто нет буквы и поэтому его не видно в Проводнике.

Источник

В чем разница между GPT и MBR при разметке диска

Вы установили новый жесткий диск на компьютер, и при установке Windows 10 вас спросят, хотите ли Вы использовать MBR (Master Boot Record) или GPT (GUID Partition Table). Сейчас мы рассмотрим разницу между этими двумя способами организации данных на диске и узнаем, что лучше для MBR или GPT. Сказанное ниже касается и жестких дисков (HDD) и SSD.

Интригу создавать не будем: сразу скажем, что GPT обладает множеством преимуществ, но MBR до сих пор лидирует с точки зрения совместимости и в ряде случаев ему следует отдать предпочтение. Это касается не только Windows: Mac OS X, Linux, и другие операционные системы могут также использовать формат GPT.

Структура разделов диска определяет, как дисковое пространство дробится на части, где начинается раздел, где он заканчивается, а также какой код используется, если раздел загрузочный. Вот почему надо сделать выбор между MBR и GPT до того, как разделы создаются. Если вы когда-либо разбивали диск на разделы и форматировали их, вы, конечно, сталкивались с этим. GPT – это новый стандарт, он постепенно вытесняет MBR.

Компьютер обычно имеет как минимум один диск для хранения данных. Но физический диск не может хранить данные без разбивки на разделы. Один физический диск может содержать один или быть разбит на несколько разделов. Но как создать несколько разделов? Здесь в дело вступает таблица разделов. Операционная система обратится к этой таблице для получения данных о разделах.

Ограничения MBR

MBR – Master Boot Record, что в переводе означает «главная загрузочная запись». Впервые спецификация появилась на IBM PC для DOS 2.0 в 1983 году. Формат получил свое название в виду того, что задается специальный загрузочный сектор, расположенный в «начале», т.е. операционная система знает, где его найти, а сделать это нужно первым делом.
В этом секторе содержится загрузчик установленной операционной системы и информация о разбиении физического диска на разделы. Программа начальной загрузки (boot loader) небольшая. Здесь задаются буквально начальные данные для загрузки, а в дальнейшем процесс загрузки передает управление более мощному загрузчику. Т.е. это первые биты информации, необходимые для работы загрузчика операционной системы.

У MBR есть недостатки. Например, пресловутое ограничение в 2 ТБ для размера логического диска. MBR поддерживает только четыре основных раздела. И если надо больше, придется делать один из основных разделов расширенным (extended partition) и уже в нем создавать логические разделы. По нынешним временам это выглядит диковато, как доставать правой рукой левое ухо.

Преимущества GPT

Это новый стандарт. Он ассоциируется с UEFI, который вытесняет громоздкий и неповоротливый BIOS. А GPT, в свою очередь, заменяет отживший свое MBR на нечто более современное. Называется он GUID Partition Table, т.е. таблица разделов с глобально уникальными идентификаторами. И каждый раздел диска в самом деле имеет такой идентификатор. Этот идентификатор – произвольная строка такой длины, что без труда можно каждому разделу на Земле такой идентификатор сделать уникальным.
Ограничений, присущих MBR у GPT нет. Иначе говоря, диски могут быть гораздо больше. Размеры их ограничены операционной системой и ее файловой системой. Также GPT позволяет создавать, практически, неограниченное количество разделов. Опять же ограничением будет операционная система. Так Windows позволяет создать до 128 разделов на GPT-диске. И не надо создавать расширенный раздел, чтобы система заработала.

В случае MBR данные о разделе диска и загрузочные команды хранятся в одном месте. Если происходит повреждение этой информации, либо что-либо поверх нее записывается, начинаются проблемы. А GPT наоборот хранит несколько копий указанных данных в разных местах на диске, поэтому эта технология более надежна: гораздо легче восстановить систему в случае сбоя.

В конце 1990-х голов корпорация Intel разработала новый стандарт таблицы разделов как часть прогрессивной технологии Unified Extensible Firmware Interface (UEFI). На сегодняшний день это часть спецификации UEFI. Технология GPT также предусматривает циклический избыточный контроль (cyclic redundancy check или CRC). Сохраняются контрольные суммы для проверки сохранности данных. Если данные претерпели непредусмотренные изменения, GPT идентифицирует проблему и пытается восстановить поврежденные данные из другого места на диске. В случае MBR нет возможности понять, что данные повреждены. Поэтому о проблеме вы узнаете, только когда операционная система не сможет загрузиться, или данные о разделе исчезнут.

Совместимость MBR и GPT

В случае применения технологии GPT есть возможность включить защитный MBR (protective MBR). Этот тип MBR подразумевает, что на диске один раздел. Да, применяется GPT. Но если попробовать прочитать этот диск на компьютере с какой-то старой операционной системой, она увидит один раздел на всем диске. Это сделано для того, чтобы старые системы не приняли GPT-диск за неразбитый на разделы. Иначе можно было бы по ошибке стереть все на диске.

Windows может загружаться c GPT-дисков только на 64-битных компьютерах с UEFI. Речь идет от Windows 10, 8, 7, Vista и соответствующих серверных версиях ОС. Точнее говоря, все упомянутые выше версии Windows могут использовать GPT-диски для чтения и записи данных, но вот загрузиться с них они не смогут без UEFI. Другие современные операционные системы также могут использовать GPT. Linux имеет встроенные средства для применения этой технологии. В компьютерах Apple на базе процессоров Intel более не используется APT (Apple Partition Table), ее место заняла технология GPT.

Вы, скорее всего, захотите применить GPT при разбиении диска на разделы. Это более современный и надежный стандарт, к которому все производители компьютеров и программного обеспечения уже перешли. Если же нужна совместимость со старым оборудованием, например, для загрузки Windows с диска на компьютере с обычным BIOS, пока придется пользоваться только MBR.

Честно говоря, таблица несколько условна, т.к. квалифицированный системный администратор может путем некоторых манипуляций превратить это «не поддерживает» в «поддерживает». Тем не менее, практический вывод очевиден: современные 64-битные ОС все способны применять современную технологию. А на 32-разрядной ОС применение стандарта GPT не получится.

Отличия MBR и GPT

Показатель MBR GPT
Количество разделов До четырех основных разделов. На таблицу разделов отведены 64 байта – по 16 байт на раздел. Если надо больше, системный администратор должен конвертировать четвертый основной раздел в extended partition, а затем создать в нем подразделы (логические диски). Максимальное число подразделов – 128. Технология, практически, не ограничивает (очень много). Но операционные системы имеют такое ограничение. Для Windows — 128 разделов. Размер таблицы разделов имеет размер — 16384 байт. Т.е. по 128 байт на раздел.
Максимальный размер раздела 2 терабайта. На информацию о размере раздела отведено 4 байта (32 бита). Таким образом, максимальное шестнадцатеричное число будет FFFFFFFF , что равно 4294967295 секторов. На текущий момент каждый сектор традиционно ограничен 512 байтами, что означает максимальный размер 2’199’023’255’040 байт, т.е. 2 ТБ. Иначе говоря, если диск больше 2 ТБ, избыточное место на диске просто так использовать не получится. На данные о размере раздела дано 8 байт (64 бита). Таким образом, в теории максимальный размер раздела при 512-байтных секторах будет 9’444’732’965’739’290’427’392 байт, т.е. 9,4 зеттабайт. Однако, на практике максимальный размер зависит от ограничений, установленных операционной системой.
Избыточность MBR хранит данные для загрузки ОС и данные о разделе в одном месте – в начале раздела. Если эти данные повреждены или стерты, ОС не сможет загрузиться – загрузчик испорчен. Вы, наверное, знакомы с термином «восстановление MBR», на эту тему много информации в интернете. Избыточность – одно из ключевых отличие GPT от MBR. GPT сильно превосходит MBR по этому параметру. GPT хранит загрузочные данные и информацию о разделе в нескольких местах на диске. Эти копии можно использовать для восстановления поврежденных данных. Более того, GPT предусматривает контроль при помощи циклического избыточного кода (cyclic redundancy check или CRC), т.е. периодически проверяет целостность данных.

Как узнать, MBR или GPT на диске

В Windows 10, чтобы посмотреть MBR или GPT, нажмем Win + R (или Пуск / Выполнить), введем diskmgmt.msc и нажмем Enter.

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

Источник

Adblock
detector