2

У меня есть система, в BIOS которой есть возможность выбрать тип загрузки "BIOS" или "UEFI". Когда я выбираю "BIOS", я могу загрузить DOS без проблем. Когда я выбираю "UEFI", я могу загрузить скрипт EFI startup.nsh без проблем. Однако я не могу загрузить DOS из выбора загрузки "UEFI".

У меня вопрос: есть ли способ загрузить DOS, если в BIOS выбрано значение "UEFI"?

Я немного поиграл с grub, но обнаружил, что в нем нет полной эмуляции BIOS. По-видимому, опции "fakebios" и "loadbios" - это простые эмуляции для решения проблем с видеокартами. Они не работают в этом случае.

4 ответа4

2

Это своего рода оксюморон. Существует два стандарта для таблиц разделов диска: MS-DOS и U/EFI. Более старый MS-DOS, новый UEFI.

Старый тип таблицы разделов имел несколько серьезных недостатков, наиболее известным из которых является невозможность использования дисков размером более 2 ТБ. Это связано с тем, что он использует 32-разрядные адреса для идентификации 512-байтовых секторов. Продукт этих двух - 2TiB, самый большой диск, который вы можете использовать с таблицей разделов такого типа.

Есть, конечно, другие ограничения: только 3 основных раздела, только 59 логических разделов, только одна копия таблицы разделов (в начале диска, в MBR), структурированная как связанный список, который, очевидно, весьма подвержен повреждению, использование старомодного CHS (головка-цилиндр-Ssector).

Чтобы преодолеть эти проблемы, была введена таблица разделов GPT как часть UEFI Intel. GPT преодолевает все эти проблемы (например, есть две копии таблицы, в начале и в конце диска, она позволяет разбивать намного более крупные диски, до 9,4 ZiB, использует логическую адресацию блоков LBA вместо CHS, имеет только первичные разделы, до 128).

Информация таблицы разделов хранится в структуре в начале диска, которой предшествует заголовок первичного раздела (это также реплицируется для избыточности в конце диска). Эта структура новая: ее не было в старой таблице разделов MS-DOS.

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

Теперь вы понимаете, почему вы можете загрузить компьютер с диска с таблицей разделов GPT, когда вы устанавливаете BIOS в режиме BIOS: диск имеет MBR, так что вы можете загрузиться с него. Однако обратное утверждение неверно: если на диске имеется таблица разделов MS-DOS (не та, что была упомянута выше, а просто устаревшая, за которой не следует правильная структура GPT), тогда в BIOS устанавливается UEFI. Режим означает, что загрузчик будет искать структуру GPT, которая вместо этого отсутствует.

Вот почему ваш вопрос немного оксюморон.

1

Нет, загрузка в DOS невозможна, если для параметра установлено значение "UEFI". С этой опцией можно загружать только совместимые с UEFI операционные системы.

0

Не без доступа к настройкам прошивки (клавиша при запуске, которая либо мигает на экране прямо в начале загрузки, либо должна быть найдена в руководстве или онлайн). Должна быть опция для переключения между UEFI и CSM (модуль поддержки совместимости, который обеспечивает более старые функции BIOS; также может быть обозначен как BIOS или Legacy). К сожалению, я не могу предоставить конкретные инструкции о том, какую клавишу нажимать или в каком конкретном меню находится этот параметр, не зная, какая у вас конкретная коробка. Да, верно, это меняется.

-2

Это возможно.

Самый простой способ заключается в том, что BIOS фактически предоставляет хуки для точек загрузки Legacy MBR. Таким образом, Boot Manager будет показывать ссылки с префиксом UEFI или что-то вроде "Legacy". Я видел много таких в последнее время на серверах.

Трудный путь, оставленный в качестве упражнения для читателя. (-: Обычно здесь можно вставить слова "и тогда произошло чудо".

Посмотрите на Clonezilla, которая использует grub в качестве загрузчика. Их ISO-образы могут загружаться с помощью методов Legacy и UEFI, а также иметь зацепку в главном меню для загрузки FreeDOS из grub.

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