У меня Linux на USB (32-битной x86) и двух ПК,

  1. один ноутбук 64x UEFI сапоги отлично.
  2. один планшет с 64- битным процессором, но 32-битный uefi-bios не загружается.

Второй вариант не поддерживает устаревшую загрузку, но он может загружаться из .efi .

К сожалению, ни один из .efi файлов ...

  • /efi/boot/bootx64.efi
  • /efi/boot/grubx64.efi

... загружается и выдает то же сообщение: \efi\boot\bootx64.efi boot failed .

Какие-либо предложения?

1 ответ1

1

EFI поддерживают программы, в том числе загрузчики, примерно такой же глубины. Другими словами, EFI x86-64 (он же AMD64, x64 или EM64T) может запустить 64-разрядный двоичный файл, который обычно имеет имя файла, заканчивающееся на x64.efi ; и EFI x86 (он же IA32, i686 или связанный с ним) может запускать 32-разрядный двоичный файл, который обычно имеет имя файла, оканчивающееся на ia32.efi . Обратите внимание, что если у вас есть 32-битный EFI, разрядность CPU не имеет значения. В результате ваша система с 32-разрядным EFI и 64-разрядным процессором ограничена выполнением 32-разрядных программ EFI.

Как правило, битовая глубина загрузчика EFI (который является просто определенным типом программы EFI) также ограничивает битовую глубину ОС, которую она запускает. Таким образом, проще всего установить 32-разрядную ОС на компьютер с 32-разрядным EFI. Однако есть способы обойти это ограничение. В частности, как загрузчик Apple OS X, так и Linux GRUB поддерживают загрузку ядра с кросс-битной глубиной, поэтому вы можете запустить 64-разрядное ядро из 32-разрядного загрузчика или наоборот. (Очевидно, вам нужен 64-битный процессор для запуска 64-битного ядра.) Поскольку вы говорите, что используете Linux, но не говорите, какой дистрибутив вы используете, я не могу дать очень подробные инструкции - и на самом деле у меня нет подробностей под рукой. Такие установки с кросс-битовой глубиной являются очень «передовыми», и я рекомендую избегать их, если это вообще возможно.

Придерживаться 32-битной ОС, вероятно, будет проще, но многие ОС (включая большинство дистрибутивов Linux) пренебрегли 32-битными EFI, поэтому вам может потребоваться добавить загрузчик самостоятельно. Этот процесс описан для Ubuntu здесь. IIRC, Debian теперь предоставляет 32-битную поддержку EFI, так что вы можете заставить ее работать «из коробки».

В конечном итоге, чтобы иметь один диск, который можно загружать как на 32-разрядных, так и на 64-разрядных EFI, с поддержкой загрузки BIOS/CSM/legacy-mode не может быть и речи, вам необходимо установить как 32-разрядные, так и 64-разрядные версии загрузчик и сконфигурируйте его для загрузки с кросс-битной глубиной. Вероятно, было бы лучше иметь два диска или как минимум две установки на одном диске, один из которых 32-разрядный, а другой - 64-разрядный. Для внешнего диска 32-разрядный загрузчик будет EFI/BOOT/bootia32.efi а 64-разрядный загрузчик будет EFI/BOOT/bootx64.efi .

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