1

Я пытаюсь настроить загрузку GParted Live PXE и следую инструкциям PXELINUX, чтобы настроить загрузку.

У меня это работает с TFTP, но теперь я хочу переключить загрузку vmzlinuz , initrd и других "больших" файлов на HTTP, потому что это медленно.

Однако, когда я изменяю, initrd=/gparted/initrd (TFTP) на http://192.168.0.1/gparted/initrd в конфигурации pxe, экран загрузки зависает на неопределенное время при

Getting cached packet
My IP is 192.168.0.97
Loading vmlinuz... ok                         <-- that is still loadedvia TFTP)
Loading http://192.168.0.1/gparted/initrd...

Глядя на сетевой трафик через wireshark, я вижу соответствующие передачи для /gparted/syslinux.efi , /gparted/ldlinux.e64 , /gparted/pxelinux.cfg/default , /gparted/vmlinuz . После этого наступает мертвая пауза, поэтому я предполагаю, что стек HTTP не работает должным образом.

На странице PXELINUX написано:

Начиная с версии 5.10, специальный двоичный файл PXELINUX, lpxelinux.0, изначально поддерживает передачу по HTTP и FTP.

Однако в разделе UEFI говорится:

Загрузчики "(l)pxelinux.0" могут загружать клиенты на основе BIOS. Аппаратное обеспечение, использующее UEFI, должно использовать адекватный «syslinux.efi» (для EFI IA32 или EFI X64 соответственно) вместо использования «(l)pxelinux.0».

Как вы можете видеть из списка загруженных файлов TFTP, после моего опыта в моем предыдущем вопросе PXE я перешел с загрузчиком UEFI.

Существует ли также дополнительная "l" -версия загрузчиков UEFI, которая предлагает поддержку HTTP? Что я могу сделать для дальнейшей диагностики?

1 ответ1

2

Согласно этому сообщению, syslinux.efi должен поддерживать HTTP. Это может зависеть от некоторых функций / сервисов UEFI. В этом отношении конкретная реализация UEFI вашей доски может быть нарушена.

Поэтому я выполнил некоторые тесты, используя мой ПК и QEMU с прошивкой OVMF, используя мою существующую конфигурацию PXELINUX. Я заметил следующие эффекты:

  • Когда у меня была локальная загрузка по умолчанию и установлен тайм-аут, он сразу же завершал работу, возвращая меня в меню выбора загрузки (ПК) или перезагрузки (QEMU).
  • Когда у меня был какой-либо пользовательский интерфейс (проверено: vesamenu.c32 , menu.c32), он зависал (ПК) или перезагружался (QEMU).
  • Когда я удалил UI , DEFAULT и TIMEOUT , я пришел к обычному текстовому приглашению. Ничто не загружается, однако, он только жаловался на то, что ни UI ни DEFAULT не установлены.

Этот опыт в сочетании с тем фактом, что GRUB2 работал безупречно, включая графический режим на моем ПК и QEMU, приводит меня к выводу, что SYSLINUX 6.03 (пока) не подходит для сетевой загрузки UEFI.

К сожалению, GRUB2 не был создан для установки «вручную». Он также очень тяжелый, он загружается через PXE в течение нескольких секунд (в обычной модульной версии). Хотя я не знаю лучшей альтернативы.

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