Проблемы с запуском, возможно startup.nsh в оболочке EFI.

Вопрос или проблема

У меня есть мини-ПК, который всегда загружается в Windows, независимо от того, какой порядок загрузки установлен в UEFI. Я думал, что на разделе ESP/EFI есть стартовый сценарий, который перезаписывает порядок загрузки при каждом запуске, поэтому я удалил раздел ESP, создал его заново и восстановил загрузочную конфигурацию, используя установочный носитель Windows 10. Но это ничего не изменило. ПК по-прежнему загружается с Windows по умолчанию. Чтобы загрузиться с live USB, мне приходится нажимать F7 и затем выбирать запись для USB. Я также пробовал установить Ubuntu и Phoenix OS, но они загружаются только в первый раз (снова используя F7) и больше не загружаются.

Я прочитал эти страницы:

https://wiki.archlinux.org/index.php/Unified_Extensible_Firmware_Interface#UEFI_Shell

https://software.intel.com/en-us/articles/efi-shells-and-scripting

Как удалить ОС из меню загрузки

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/4/html/Installation_Guide_x8664/s3-ia64-postinstall-startup.nsh.html

но ‘bcfg’ не сработал (похоже, моя efi оболочка не поддерживает эту команду), и ‘fs0 – edit startup.nsh’ тоже не сработала (она открывает fs0, заявляя, что он не отображен)

Я также попытался смонтировать раздел ESP в Windows и исследовать, что там есть.
Я не нашел там startup.nsh.
Есть 3 каталога: Microsoft, Boot и PhoenixOS. Boot и PhoenixOS содержат bootia32.efi, в Microsoft находится множество файлов, включая .efi.

Я ищу способ избавиться от любого стартового скрипта и использовать меню загрузки UEFI вместо этого, и мне интересно, может ли кто-то указать мне правильное направление.
Любая помощь будет очень признательна.

Обновления:

Запись NVRAM Boot0001 указывает на EFI/Microsoft/Boot/bootmgfw.efi, создаваемую при каждом запуске. У кого-нибудь есть идеи, где хранится такой скрипт и как его отключить?

Это может быть проблемная прошивка, как упомянуто здесь

Предлагаемое решение:

Подменить загрузчик Windows — Некоторые проблемные EFI загружают только загрузчик Windows, который называется EFI/Microsoft/Boot/bootmgfw.efi на ESP. Поэтому, возможно, вам нужно переименовать этот загрузчик в что-то другое (я рекомендую переместить его на один уровень вниз, в EFI/Microsoft/bootmgfw.efi) и поместить копию вашего предпочтительного загрузчика вместо него. (Большинство дистрибутивов помещают копию GRUB в подкаталог EFI, названный в их честь, например, EFI/ubuntu для Ubuntu или EFI/fedora для Fedora.) Учтите, что это решение крайне некрасивое, и некоторые пользователи сообщали, что Windows заменяет свой загрузчик, так что оно может не работать на 100%. Однако это единственное решение, которое работает на некоторых сильно испорченных EFI. Перед применением этого решения я рекомендую обновить вашу прошивку и заново зарегистрировать ваш загрузчик с помощью efibootmgr в Linux или bcdedit в Windows.

.

Ответ или решение

Решение проблемы загрузки вашего мини-компьютера, который всегда загружается в Windows, может потребовать более глубокого понимания работы EFI (Extensible Firmware Interface) и UEFI (Unified Extensible Firmware Interface). Исходя из предоставленной вами информации, проблема связана с NVRAM (энергонезависимая память) вашего устройства, которая, похоже, восстанавливает запись загрузки Windows при каждом запуске. Приведенные вами ссылки и описания помогают понять, где могут быть возможные узкие места, но давайте рассмотрим предмет более подробно и предложим возможные решения.

1. Понимание проблемы:

Основная проблема заключается в том, что ваш компьютер игнорирует установленный порядок загрузки и автоматически выбирает Windows как операционную систему по умолчанию, несмотря на попытки изменить это поведение. Это может быть вызвано несколькими факторами, включая настройки NVRAM, которые управляют порядком загрузки, и возможные скрипты, влияющие на процесс.

2. Исследование и устранение проблем:

  • NVRAM и порядок загрузки: NVRAM отвечает за хранение данных о порядке загрузки и других конфигурационных параметрах. Вы можете очистить и пересоздать данные в NVRAM с помощью команды efibootmgr в Linux или bcdedit в Windows. Проверьте, не восстанавливаются ли записи вместо того, чтобы сохраняться изменения.

  • Изменения EFI Shell: Поскольку команды EFI Shell, такие как bcfg, могут не поддерживаться вашей системой, попробуйте использовать альтернативные способы редактирования порядка загрузки, например, через графический интерфейс BIOS/UEFI.

  • Анализ ESP (EFI System Partition): Не лишним будет повторно проверить ESP на наличие файлов сценариев, которые могли бы повлиять на загрузку. Даже если startup.nsh отсутствует, другие скрипты или приложения могли бы изменить порядок загрузки.

3. Применение предложенного решения:

Поскольку стандартные методы не срабатывают из-за предполагаемых ограничений прошивки, вы можете применить иной подход, известный как "перехват загрузчика Windows":

  • Перемещение Windows Boot Manager: Переименуйте оригинальный загрузчик Windows bootmgfw.efi в другую папку, например, EFI/Microsoft/bootmgfw_backup.efi.

  • Замена загрузчика: Скопируйте ваш предпочтительный загрузчик, например GRUB, в место оригинального загрузчика Windows так, чтобы ваша настройка использовала эту замену по умолчанию.

  • Обратимость изменений: Помните, что Windows иногда восстанавливает свои файлы загрузчика. Поэтому такое решение может быть временным, и по возможности обновите прошивку вашего устройства.

4. Прогноз и дальнейшие шаги:

Если указанные методы не устраняют проблему, возможно, потребуется обновление прошивки вашего устройства. Современные прошивки могут предоставить улучшенные способы управления загрузкой. Свяжитесь с производителем мини-компьютера для получения поддержки и потенциальных обновлений.

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

Оцените материал
Добавить комментарий

Капча загружается...