我目前在学校的技术帮助台工作,我们负责维修所有学生的个人电脑。我们有数百张 DVD 和 CD,用于启动各种不同的设备以排除故障。其中包括:
- 各种 Linux 发行版
- Windows PE 环境
- 硬盘再生
- Windows 恢复控制台(所有版本)
- Windows 安装磁盘(所有版本)
这意味着我们在 CD 和 DVD 上花费了大量金钱,因为它们很容易丢失、划伤等等。管理它们变得相当麻烦!我一直在考虑使用 PXE 服务器,这样我们就可以通过网络启动这些东西,减少混乱。
其中一些磁盘具有特殊的启动信息,因此您不能简单地将文件复制到空白光盘。其中一些在我制作的多启动 CD 上彼此不兼容。例如,我无法使用 Ubuntu 11.04 和 Hiren 的启动 CD 制作多启动 CD。
是否可以拥有一个 PXE 服务器,允许设备“启动到”许多不同的环境?
PXE 服务器是否可以具有可启动磁盘映像 (ISO),它只是“模拟”连接的计算机进行启动?
如果问题 2 的答案是否定的,那么如何设置 PXE 服务器来引导多个设备?
最后,我想引导到 PXE 服务器,该服务器只提供我们可以引导的编号菜单。例如 1) Ubuntu、2) 硬盘驱动器再生、3) Windows 7 Home 等。这可能吗?
我应该从哪里开始呢?
答案1
是的。我管理过很多 PXE 服务器。我推荐 NeoPXE。它有大量的文档,而且功能非常强大。你可以创建一个菜单,该菜单将链式加载到其他 PXE 服务器并安装目标。
您还应该知道,PXE 服务器只是与 TFTP 服务器配对的 DHCP 服务器。要执行更高级的操作(如我下面解释的),您将设置代理 DHCP 服务器。
例如,我们已将其设置为,当您首次 PXE 启动时,您将获得一系列选项,可以选择转到几个不同部门的 PXE 服务器或转到 Linux、Solaris 或 BSD。从那里,您可以转到 Stable/Devel,然后选择您的架构和版本。最后,您将获得执行 kickstart/autoyast/jumpstart 或有人值守安装的选项。
菜单可以通过编程和/或手动创建。编辑配置文件然后运行 make。我认为这回答了 1、2 和 4。对于第 3 点,如果我理解正确的话……您不能简单地从 PXE 服务器向客户端提供 ISO。对于 Linux 发行版,通常,您必须提取 initrd 和 vmlinuz,然后使其余软件包可通过 NFS、FTP、HTTP 或 smb 访问。
我认为这正是您所寻找的。
http://download.oracle.com/docs/cd/E19273-01/835-0781/sfx46losig.gisnq.html
如果您需要针对特定发行版的更多具体说明,或者需要帮助设置 NeoPXE,请告诉我。
答案2
我有一个兼作本地 Ubuntu 镜像的 PXE 服务器,随着新版本的发布,我会添加新的镜像来启动。我相信许多操作系统都能够做到这一点,但 Linux 是最简单的。如果 Amartel 帖子中的链接不足以让您了解,我可以在我的博客上写一篇详细的帖子,并在评论中向您发送链接,但这里是您需要的基本概述:
- 支持 NEXT-SERVER 指令的 DHCP 服务器,该指令会告诉客户端要启动哪个服务器和哪个文件。如果您在大型网络中运行,这可能是一个问题。为此目的,通常最好有一个独立的网络。
- NeXT-SERVER 需要是带有 syslinux 的 tftp 服务器。syslinux 菜单实际上允许您通过网络选择和启动映像。向菜单添加新选项就像在添加 iso 后编辑文本文件一样简单。此设置完全与映像是什么无关 - 计算机会像在 CD 驱动器中一样启动它。
- 一个可以访问图像存储的服务器(可以与 tftp 服务器相同,但也可以使用其他地方的 NFS)。
答案3
这些计算机是否足够新,可以支持启动到 USB 硬盘?如果是这样,您可以探索另一种选择。您可以将多个 PE 整合到一个闪存驱动器上,并创建一个自定义启动菜单,该菜单将启动您选择的 PE(或运行其他工具)。我这样做了,并且能够将您携带的内容基本放在一个闪存驱动器(128GB)上。只要 PC 可以启动它,那就太好了。
至于 PXE 服务器,这里有一个关于为多个发行版(包括 DOS 映像)创建 Linux(ubuntu)PXE 服务器的链接。这应该是一个很好的起点:https://help.ubuntu.com/community/PXEInstallMultiDistro
答案4
如果您有钱可花,Altiris 是一个很好的部署系统 -http://www.symantec.com/business/deployment-solution