3

Требуется быстрое разъяснение. С MBR

Maketecheasier.com говорит

каждый раздел может иметь размер не более 2 ТБ

Различия между MBR и GPT

Но IBM's Developerworks говорит

Макет MBR также ограничивает максимальный размер поддерживаемого диска до 2 ТБ.

Learn Linux, 101: разметка жесткого диска

Что правильно?

* Крест размещен на stackoverflow

2 ответа2

2

Оба верны - и ни один не верен.

Во-первых, часть "ни": предел MBR составляет 2 ^ 32 сектора. С учетом распространенных размеров сектора в 512 байт ограничение составляет 512 * 2 ^ 32 байта, что составляет 2 ТиБ. Обратите внимание, что это ТиБ, а не ТБ. См. Здесь, среди прочего, информацию о различиях между блоками IEEE-1541 (такими как TiB) и блоками SI (такими как TB). На уровне ТБ или ТиБ разница составляет около 10%, что достаточно, чтобы вызвать большую путаницу. Кроме того , чтобы добавить еще один педантичную записку, один комментарий относится к "Tb" , которая является технически TERA бит, а не терабайт - это выключение с коэффициентом 8; но я отвлекся ....

Хуже того, некоторые диски имеют сектора размером не 512 байт. Чаще всего некоторые диски (в основном внешние USB-накопители, но также и некоторые внутренние диски) имеют сектора размером 4096 байт. На таких дисках предел MBR увеличен до 16 TiB. Обратите внимание, что размер сектора здесь является размером логического сектора. Большинство современных жестких дисков имеют 4096-байтовые физические сектора, но, поскольку дисковый ввод-вывод и структуры данных, включая таблицы разделов, обрабатываются в терминах логических секторов, для этого обсуждения важен размер логического сектора. В любом случае, результатом этого является то, что у вас вполне может быть внешний USB-диск объемом 3 ТБ, 4 ТБ или более, который использует MBR, и все будет в порядке.

Во-вторых, "обе" части: структуры данных MBR немного беспорядочные, но важной частью этого обсуждения является способ описания разделов в форме адреса логического блока (LBA). Это как начальная точка и размер в секторах, оба выражаются в виде 32-битных значений секторов (отсюда ограничение в 2 ^ 32 сектора). Из-за этого максимальный размер раздела диска MBR составляет 2 ^ 32 сектора (2 ТиБ при размере сектора 512 байт). Этот предел не может быть преодолен, за исключением увеличения размера сектора или изменения типа таблицы разделов. Поскольку начальная точка раздела также является 32-разрядным значением, теоретически возможно иметь 1-3 раздела, которые полностью находятся в первых 2 ^ 32 секторах диска, а затем иметь конечный раздел до 2 ^ 32 секторов, который начинается как раз перед 2 ^ 32-м сектором диска. Такая конфигурация теоретически поддерживала бы диски размером до 4 ТиБ с размером сектора 512 байт. Конечно, вы все равно будете ограничены размером раздела в 2 ^ 32 сектора, и размещение разделов будет чрезвычайно важным. Например, на таком диске не может быть четырех разделов по 1 TiB. Таким образом, даже эта теоретическая поддержка больших дисков очень ограничена.

Обратите внимание, что в предыдущем абзаце я несколько раз подчеркивал слово "теоретически". Причина в том, что многие операционные системы и инструменты для манипулирования MBR перестают работать, когда размер диска превышает 2 ^ 32 сектора, так как эти ОС и инструменты должны по-прежнему ссылаться на данные за пределами 2 ^ 32-секторной точки. Таким образом, небезопасно создавать структуру данных MBR, в которой раздел охватывает точку 2 ^ 32 секторов, даже если такую структуру данных можно создать. На самом деле, я провел несколько тестов по этому вопросу (см здесь для резюме моих результатов), и я обнаружил , что только операционку , которые работали с диском MBR с перегородкой , которая охватывает значение 2 ^ 32-сектора также работало хорошо GPT. Поскольку GPT намного более эффективен, чем MBR, в таких ситуациях практически нет причин рисковать использованием MBR. Кроме того, мои тесты не охватывали все возможные инструменты; даже если вы используете операционную систему, такую как Linux или Windows 7, которая может обрабатывать MBR-диск большего размера, вполне возможно, что вы запустите утилиту, которая вылетит на такой диск, что может привести к серьезным последствиям. потери данных.

В итоге вы можете использовать диски размером более 2 ТБ с MBR, если на диске имеется 4096-байтовый логический сектор. Самый распространенный способ сделать это - поместить его в определенные внешние USB-корпуса. Однако использование диска размером более 2 ТБ с 512-байтовыми логическими секторами может быть безопасно осуществлено только с GPT (или без использования диска за пределами 2 ТБ). Большинство современных ОС поддерживают GPT, поэтому для большинства людей это не сложно.

1

Каждый раздел не может быть длиннее 2 ТБ. Это связано с тем, что 2 ТБ (примерно) - это максимальный размер, который может быть указан байтами с 9 по 12, которые являются начальным сектором в формате LBA. Затем байты 13-16 могут указывать размер, который должен составлять 4 294 967 295 секторов или меньше, что составляет 2 199 023 255 040 байт, если каждый сектор составляет 512 байт (который был наиболее широко поддерживаемым стандартным размером для сектора в течение всего времени, когда MBR регулярно использовались ). 2 ТБ составляет 2 199 023 255 552 байта, поэтому фактический предел (для секторов стандартного размера) составляет 2 ТБ - 512 байтов. Предполагая, что мы принимаем это приближение, претензия MakeTechEasier.com (упомянутая в вопросе) является правильной.

Затем байты 13-16 MBR могут указывать размер, который аналогичным образом должен составлять 2 199 023 255 040 или меньше (делая те же предположения о размерах сектора). Таким образом, фактический предел того, что может указывать MBR (используя самые распространенные стандарты), составляет 4 ТБ - 1 КБ.

Однако у человека не может быть 4 разделов по 1 ТБ каждый, потому что запуск с 3-го раздела будет невозможен. Это слишком запутанно для простого маркетинга, поэтому люди обычно называют 2 ТБ пределом, прежде чем потенциальные проблемы могут закрасться в смесь. Чтобы не усложнять историю, IBM Developerworks, вероятно, просто говорит о том, что рекомендуется для компаний, которые просто хотят, чтобы все работало хорошо, не испытывая неудобств из-за новых ограничений, которые нужно отслеживать, пытаясь выжать все возможное. Проще сказать: MBR = до 2 ТБ = хорошо, GPT поддерживает больше.

Обратите внимание, что ограничения, о которых я говорю, относятся только к значениям, которые хранятся в структурах диска. Я не делаю никаких конкретных заявлений о поддержке различными операционными системами или реализациями BIOS. Программное обеспечение может использовать "подписанный" номер для отслеживания вещей. Такой программный код с большей вероятностью будет иметь ограничение в 2 ТБ, чем ограничение в 4 ТБ. Идея иметь дисковое пространство, которое может использоваться разделом, но которое не может быть начальным расположением раздела, может нарушать некоторые базовые предположения некоторых программ (таких как раздел диска "fdisk" и "setup"). установщик операционной системы) и др. Таким образом, заявление IBM, возможно, также пыталось описать вероятный опыт, принимая во внимание сложность, вызванную необходимостью поддержки ограничениями на диске (объем данных помещается на определенном пространстве), операционными системами (включая драйверы для определенных дисков). ) и реализации BIOS. Хотя теоретически можно обойти ограничение, установленное IBM, с помощью программного обеспечения предоставленная информация может быть правильным советом для тех, кто хочет избежать проблем.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .