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

673
John Smith

Я всегда думал, что GPT - это способ записи таблицы разделов на диск, и вы можете делать это так, как вам нравится. Но когда я позвонил

fdisk -l 

для моего внешнего накопителя (подключенного через USB-порт), где были удалены все разделы, показывалось предупреждение

WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.  Disk /dev/sdb: 500.1 GB, 500074283008 bytes 255 heads, 63 sectors/track, 60797 cylinders, total 976707584 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 identifier: 0x00000000  Device Boot Start End Blocks Id System /dev/sdb1 1 976707583 488353791+ ee GPT 

Как вы можете видеть это показывает System = GPT. Я подумал: хорошо, может быть, когда я играл с разделами, я не полностью удалил раздел GPT /dev/sdb. Поэтому я создал новый раздел MBR с помощью fdisk(fdisk сказал: «Раздел 1 типа Linux и размер 465,7 ГиБ установлен»), fdisk -lснова вызвал и получил

WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.  Disk /dev/sdb: 500.1 GB, 500074283008 bytes 60 heads, 62 sectors/track, 262555 cylinders, total 976707584 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 identifier: 0x00000000  Device Boot Start End Blocks Id System /dev/sdb1 2048 976707583 488352768 83 Linux 

И это то, что я не понимаю. fdiskсоздал раздел не-GPT старого стиля, но по-прежнему считает, что диск относится к типу GPT.

Что это значит? Означает ли это, что GPT также является некоторым свойством дискового оборудования?

1
* «Итак, я создал новый раздел MBR с помощью fdisk ...» * - Итак, вы пытаетесь испортить «защитную MBR» GPT, которая используется для обеспечения обратной совместимости. * «Означает ли это, что GPT также является некоторым свойством дискового оборудования?» * - Нет, если емкость диска была достаточно маленькой (то есть менее 2 ТБ), вы могли бы использовать схему MBR или GPT и иметь возможность использовать / доступ на полную мощность. Но как только вы установите GPT, вы должны придерживаться этой схемы. sawdust 6 лет назад 3
Что делать, если я использую диск, который изначально является MBR, и решил разделить его как GPT? Будет ли защитный MBR будет создан в этот момент? что происходит, когда я удаляю раздел GPT с помощью `parted` или` gdisk`? защитный MBR тоже удален или нет? John Smith 6 лет назад 0
* «Будет ли в этот момент будет создана защитная MBR?» * - Да, см. https://technet.microsoft.com/en-us/library/cc725671(v=ws.11).aspx * », что происходит, когда Я удаляю раздел GPT с помощью parted или gdisk? Защитная MBR также удалена или нет? "* - Нет, защитная MBR является статической. Редактирование GPT влияет на GPT, а не на таблицу защитных разделов MBR. sawdust 6 лет назад 2

1 ответ на вопрос

1
Rod Smith

В этом контексте основная загрузочная запись (MBR) и таблица разделов GUID (GPT) - это два разных типа таблиц разделов - структуры данных, которые содержат информацию о разделах - которые могут храниться на дисках. («MBR» также может использоваться для обозначения загрузчиков в режиме BIOS или для первого сектора на диске, но эти значения не относятся к вашему вопросу.) Большая часть вашего вопроса относится к расположению данных, используемых MBR против GPT:

  • MBR использует первый сектор диска и, если присутствуют расширенные и логические разделы, дополнительные сектора, которые могут быть где угодно на диске.
  • GPT использует первые 34 сектора диска и последние 33 сектора диска (при условии 512-байтовых секторов и размеров таблицы разделов по умолчанию; число используемых секторов может варьироваться, если эти предположения не выполняются).

Таким образом, GPT использует гораздо больше дискового пространства, чем MBR (но все же тривиальный объем дискового пространства по сравнению с общей емкостью современного диска), а GPT использует критический первый сектор MBR. По этой причине часть GPT представляет собой защитную MBR, которая очень похожа на обычную MBR; но защитная MBR состоит из одного раздела типа 0xEE, который охватывает весь диск или 2 ТБ, в зависимости от того, что меньше. Идея защитной MBR состоит в том, чтобы заставить неосведомленные GPT инструменты думать, что используется весь диск, чтобы предотвратить случайную загрузку диска более старой утилитой разметки только для MBR.

Версия Linux, fdiskкоторую вы использовали, не совсем не знает GPT - она ​​знает достаточно, чтобы искать структуры данных GPT и предупреждать вас, когда находит их. Однако он недостаточно осведомлен о GPT, чтобы точно сообщать о структурах данных GPT, а только о защитной MBR. Более новые версии fdiskмогут обрабатывать GPT-диски более тщательно. Так может и другие инструменты, как libparted (ядро parted, GParted, а также некоторые другие инструменты) и моей GPT FDISK ( gdisk, sgdiskи cgdisk).

Вы начали с диска GPT. Затем вы удалили разделы с диска; но это не удаляло структуры данных GPT - оно просто создавало структуры данных, которые идентифицировали диск как пустой. Поскольку fdiskне понимает структуры данных GPT, он не может определить разницу между диском, заполненным действительными разделами GPT, и диском со структурами данных GPT, но разделы не определены. Используя fdiskдля создания новой MBR, замените защитную MBR GPT на MBR, которая определяет (в вашем случае) один раздел Linux. Обратите внимание, однако, что это оставило 66 секторов структур данных GPT без изменений. (33 из этих секторов находятся в конце определенного вами раздела, поэтому они могут быть перезаписаны структурами данных файловой системы или содержимым файла.)fdisk ищет эти структуры данных GPT, он продолжает жаловаться на обнаружение GPT.

При конвертации из GPT в MBR лучше использовать что-то на основе libparted; этот инструмент знает достаточно, чтобы исключить старые структуры данных GPT. В качестве альтернативы вы можете использовать my gdisk, которая преобразует структуры данных MBR в эквиваленты GPT. Старый, который fdiskвы использовали, очевидно, не делает этого. (Я не знаю, что fdiskделают новые версии.) Инструменты Windows, как и старые fdisk, оставляют старые данные GPT.

В настоящее время ваш диск технически является легальным MBR-диском. Некоторые инструменты, тем не менее, будут жаловаться на это, как и fdiskделает. Мой gdiskспросит, хотите ли вы рассматривать это как MBR или GPT. Это предназначено, чтобы помочь в восстановлении, если кто-то случайно сотрет защитную MBR; но это может вызвать проблемы, если вы не знаете, что делаете. Некоторые другие инструменты могут работать неправильно неизвестными способами. Чтобы избежать проблем, вы можете использовать my fixpartsна диске. Эта программа установлена ​​в пакете gdiskили gptfdiskв большинстве дистрибутивов Linux и может стереть нежелательные структуры данных GPT. Однако есть одна важная оговорка: поскольку ваш новый раздел перекрывает структуры данных GPT на конце диска, он fixpartsбудет удален в пределахраздел, который может повредить файл или файловую систему, если вам не повезло. Лучший выбор может быть, чтобы уменьшить файловую систему (по всего лишь как 33 секторов) с конца и затем запустить fixpartsна нем.

Если у вас нет веских причин использовать MBR, я рекомендую использовать GPT в эти дни. Более старые ОС, такие как DOS и Windows XP, требуют MBR, но большинство или все современные ОС, включая Windows 7 и более поздние версии, любой даже удаленно текущий Linux, большинство или все текущие BSD и любые OS X / macOS, работающие на базе Intel Маки, поддержка GPT. GPT имеет скромные преимущества перед MBR, такие как резервные структуры данных, контрольные суммы для обнаружения ошибок и именованные разделы. Преобразование GPT в MBR, как вы сделали, выявило тот факт, что переключение может вызвать проблемы или, по крайней мере, путаницу. Конечно, для максимальной совместимости, MBR лучше, и это может быть важно на некоторых сменных носителях; но, как правило, GPT является лучшей таблицей разделов.

Похожие вопросы