我有一台可以通过 PXE 启动的 x86-64 机器,并且想要启动实时 Fedora 17。我不想安装它,我只想像启动实时 CD 一样运行。
对于服务器,我有一台 Windows XP SP 3 主机(读作:被困住了),上面有 DHCP 和 TFTP 服务器。不是最佳选择。我有没有说过我被困住了?
谷歌搜索发现有太多关于安装通过网络,或配置基于Linux服务器可以帮助我在噪音中找到我需要的信号。
我只需要知道 (1) 要将哪些文件放在 TFTP 服务器的目录中,以及 (2) 在 DHCP 中将什么命名为启动文件。
我手头有 live CD iso,还有它的刻录映像。如果需要对某些 CD 文件进行一些调整,使系统看起来是网络而不是 CD,我需要一种从 Windows 进行操作的方法(或指向预调整文件的链接),如果可能的话。
答案1
好的,首先让我们澄清一些误解:
正如 MailQ 指出的那样,大多数无盘服务器配置都需要 NFS(因为你在评论中提到了 ubuntu,查看他们的说明)并非如此有是 NFS(Sun 的网络文件系统),但它必须是A 网络文件系统——您无法通过网络1 PXE 加载整个操作系统映像,而 TFTP 只是将可以启动的内核传递给您。
然后,您的内核会通过网络查找所需的资源(例如根文件系统,通常通过 NFS 安装)——用无盘工作站先驱 Sun 的不朽口号来说,The Network is The Computer
或者用现代的说法Your data is in the cloud
——在这种情况下是您的本地以太网云……
相比之下,LiveCD 则完全不同 - 您正在启动关掉 CD, 不是通过网络,你就有CD 的文件系统来存放你的操作系统(现在通常采用神奇的“squashFS”格式)。这相当于 600MB 到 4GB 的空间 - 远远超过你希望通过以太网传输的空间。
正如您所指出的,Windows 上有可用的 NFS 服务器(Unix 服务/Unix 应用子系统有一个,它非常合适并且易于配置。Technet 有进一步的详细信息)。如果您想在生产环境中进行设置,则需要安装 Windows 服务器,并安装并正确配置 SFU/SUA。
假设上述要求没有让你气馁,Fedora 社区有关于如何设置无盘 Fedora 系统的指南将 UNIXisms 转换为 Windows TFTP 和 NFS 服务器上的等效配置详细信息留给读者作为练习。
1 - 从技术上讲,你可能能PXE 加载整个操作系统磁盘映像,但你肯定不应该:流量会非常巨大,您无法在任何地方永久保存数据,而且我从未见过如此庞大的数据。
答案2
要从网络启动 ISO 映像,您需要:
- 配置 DHCP 服务器以将 PXE 客户端指向 TFTP 服务器并加载 IPXE
- 具有包含 IPXE(或 IPXE+pxelinux)和 memdisk 的文件夹的 TFTP 服务器
- 将共享 ISO 的 HTTP/FTP/NFS/iSCSI 服务器
也可以看看:http://www.syslinux.org/wiki/index.php/MEMDISK和http://forum.ipxe.org/showthread.php?tid=1123
答案3
至少有一半的答案似乎如下......
PXE 将网络引导程序 (NBP) 拉到客户端上,然后 NBP 决定接下来会发生什么。不确定有多少个或哪个可能是最好的,但至少有一个例子是包含“PXELINUX”的“SYSLINUX”。
PXELINUX 的形式为 pxelinux.0,应该位于 TFTP 服务器的基本目录中,并且应该是 DHCP 调用的引导程序。当 PXE 客户端获得 PXELINUX 时,PXELINUX 会读取配置文件(显然使用 TFTP 服务),该文件指示接下来发生什么。
如何将 Fedora 内核正确部署到 TFTP 目录中仍是问题(似乎需要我自己去探索)。我确实让 PXELINUX 下拉并启动 vmlinuz0 和 initrd0,但这些显然需要从 CD 中找到更多文件。