我有一个网络系统,其中我通过 PXE(pxelinux.0)为连接客户端提供一个 mini-linux。
我无法让其在 Mac OS X 上工作。从网络启动已保存以供备份操作。我使用的是 PXE v4(或有时是 6,如果这样更好的话)。DHCP 提供 IP、下一个服务器和启动文件等信息。
我怎样才能让它在 Mac 上运行?像 gParted 这样的工具?我从未尝试过。
答案1
MAC 并不“完全”使用 PXE;它们使用一种称为启动服务器发现协议 (BSDP) 的类似环境。
OS X Server 包含一个名为 NetBoot 的系统工具。NetBoot 客户端使用 BSDP 动态获取资源,使其能够启动合适的操作系统。BSDP 是在 DHCP 的基础上使用供应商特定信息构建的,以提供标准 DHCP 中不存在的附加 NetBoot 功能。该协议在客户端固件中实现。在启动时,客户端通过 DHCP 获取 IP 地址,然后使用 BSDP 发现启动服务器。每个 BSDP 服务器都会响应包含以下内容的启动信息:
- 可启动操作系统映像列表
- 默认操作系统映像
- 客户端当前选择的操作系统映像(如果已定义)
客户端从列表中选择一个操作系统,并向服务器发送一条消息以表明其选择。选定的启动服务器将响应并提供启动文件和启动映像,以及下载和执行选定操作系统所需的任何其他信息。
来源 https://en.wikipedia.org/wiki/Preboot_Execution_Environment#Sibling_environments
答案2
可以通过首先启动像 IPXE 替代 PXE 固件这样的实用程序来 PXEboot Intel Mac:
如果您的 Mac 有 CD/DVD 驱动器,那就没那么糟糕了,您只需将 IPXE ISO 文件刻录到 CD 并在您想要 PXE 启动时将其插入 CD/DVD 驱动器即可。
如果您的 Mac 比较新,没有 CD/DVD 驱动器,那么我认为您可以使用 EFI 版本的 IPXE 制作可启动的 USB 驱动器。但是,这要复杂得多。Mac 似乎不愿意启动 MBR 格式的 USB 棒,因此您不能直接获得支持网络启动的 Live USB 映像。事实上,我一直在尝试自己弄清楚如何做到这一点,但还没有完全弄清楚需要什么。