我正在尝试借助 PXELINUX 通过网络启动。我已使用官方Syslinux 文档。
我的 PXELINUX 配置文件 ( /tftpboot/pxelinux.cfg/default
) 包含:
default menu.c32
prompt 0
menu title SPIOT BOOT MENU
label localboot
menu label Boot Local Disk
localboot 0
label 1604Install
menu label Manual Install Ubuntu 16.04
kernel ubuntu/linux
append vga=788 initrd=ubuntu/initrd.gz locale=en_GB.UTF-8 keyboard-config$
label clone
menu label Clone Disk
kernel clonezilla/vmlinuz
append initrd=clonezilla/initrd.img boot=live username=user union=overlay$
label Winux
menu label Install Winux
Kernel Winux/memdisk
append iso initrd=Winux/Winux.iso raw
菜单在网络连接的机器上成功显示:
本地磁盘、Ubuntu 安装程序和 Clonezilla 菜单项均能正常工作。我创建的自定义 ISO(屏幕截图中的第四个菜单项)无法正常工作。我没有收到任何错误 - 它只是跳过而不出现错误并返回到启动菜单。
第四项菜单项:
label Winux
menu label Install Winux
Kernel Winux/memdisk
append iso initrd=Winux/Winux.iso raw
必要的工具(例如 memdisk)以及目录/文件架构都是正确的。
我的目标是通过网络启动原始 ISO 文件。如果有其他可能的解决方案,请指导我。
答案1
memdisk 是 PXE 的最后手段。它不适用于所有“可启动”ISO。
- 这是 BIOS 独有的技术
- 它需要将整个 ISO 传输到内存(通常是 TFTP)
- 如果启动操作系统更改为保护模式,则以模拟驱动器形式访问内存中的 ISO 将失败
- ETC