添加 WDS 多功能性

下午好,亲爱的哈布拉居民!

本文的目的是简要概述通过 WDS(Windows 部署服务)部署各种系统的可能性
本文将提供有关部署 Windows 7 x64、Windows XP x86、Ubuntu x64 以及将 Memtest 和 Gparted 等有用工具添加到网络启动的简要说明。
故事将按照我脑海中出现的想法的顺序讲述。 而这一切都始于微软......

现在是故事本身:
不久前,我提出了使用 WDS 在工作中部署系统的明智想法。 如果有人为我们做这项工作,那就太好了。 如果我们同时学习一些新东西,那就加倍令人愉快。 我不会详细介绍 WDS 角色的安装描述 - Microsoft 将一切都简化为下一个下一个下一个,并且有关此主题的文章堆积如山。 我将简要讨论如何使用 Windows 映像,并在那些给我带来困难的时刻停止。 将更详细地描述非 Microsoft 的系统(本文正是为此而开始的)。
让我们开始吧
将充当映像存储库和操作协调器的服务器装有 Windows Server 2008 R2。 为了使该服务正常工作,需要 DHCP 和 DNS 等角色。 嗯,AD - 用于将机器输入域。 (所有这些角色不必保留在一台机器上,它们可以分布在整个结构中。最主要的是它们能够正常工作)

1.WDS设置

我们添加必要的角色并快速进入 WDS 控制台,初始化我们的服务器并看到以下内容:
添加 WDS 多功能性

  • 安装镜像 - 安装图像。 我们将推出定制的、漂亮的系统。 为了方便起见,您可以按系统类型添加多个组:Windows 7、XP 或按任务类型 - IT 部门、客户部门、服务器
  • 启动图像 - 启动图像。 首先加载到机器上并允许您用它执行各种操作的内容。 第一种方式是安装磁盘上的方式(对于 Windows 7,这是源文件夹和 install.wim 或 boot.wim 文件。
    但是你可以用它们做各种有趣的事情:

    • 捕捉图像 или 记录图像 - 我们的主要工具,允许您复制已配置的系统,该系统已由 sysprep 进行预处理,并且是我们的模板。
    • 图像检测 - 允许您将已配置系统的映像上传到不支持通过网络启动的计算机。

  • 待处理的设备 — 等待管理员批准安装的设备。 我们想知道谁把我们的美丽放到了他们的电脑上。
  • 组播传输 - 多播。 用于将一个映像安装到大量客户端。
  • 驱动程序 - 司机。 它们有助于将必要的驱动程序添加到服务器上的映像并避免此类错误:
    添加 WDS 多功能性
    将驱动程序添加到 WDS 服务器后,必须将它们添加到正确的启动映像中。

是的,还有一件事 - 对于系统的每一位深度,您都需要制作自己的加载程序和安装程序。 你必须为动物园的多样性付出代价。
事实上,我们的WDS已经准备好了。 我们可以从计算机通过网络启动,并看到一个包含启动映像的选择框。
我不会描述准备理想图像的所有阶段,但我只会留下我自己做的文章的链接: 适用于 Windows 7 的 Tyts (由于某种原因,我安装了旧版本的 WAIK - 6.1.7100.0,无法在其中创建 Windows 7 SP1 的应答文件。我现在需要最新的版本 - 6.1.7600.16385)
等等 更多 有关为 WDS 准备 Windows XP 的说明。 我们也不详细写了——最有趣的是第二部分!

2. 通用引导加载程序

很高兴我们现在有了这样的系统。 使用它是一种乐趣。 但是否有可能以某种方式让自己的生活变得更轻松呢?
我想通过它来安装Linux!
首先,正如你们许多人所记得的那样,并行安装 Windows 和 Ubuntu 并不会对 Windows 引导加载程序带来任何好处。 它已被通用 GRUB 取代。
这里也是一样。 我们需要一个通用引导加载程序,熟悉一下 - 这是 PXELinux
1) 下载最新版本(在撰写本文时,此 5.01
我们对这些文件感兴趣:
corepxelinux.0
com32menuvesamenu.c32(您可以使用menu.c32作为启动时的文本界面)
com32chainchain.c32
所有使用此引导加载程序的手册都说这三个都可以正常工作。 我还必须添加 ldlinux.c32、libcom.c32 和 libutil_com.c32。 您可以这样做 - 复制推荐并运行。 将在哪个文件上发誓 - 将其复制到文件夹中。
我们还需要一个 memdisk 文件来下载 iso。 我们也放到这个文件夹里
2)我们将它们放在存储所有WDS图像的文件夹中。 即,这里 - RemoteInstallBootx64(我们只会安装 64,因为 86 也将相同的文件放在该文件夹中。)
3)将pxelinux.0重命名为pxelinux.com
4)创建 Linux.CFG 对于配置文件和文件本身(当然已经在这个文件夹中) - 默认(没有扩展名!),包含以下内容:

默认 vesamenu.c32
提示 0
诺逃 0
允许选项 0
# 超时时间以 1/10 秒为单位
超时 300
菜单页边距 10
菜单行 16
菜单选项卡增长 21
菜单超时 26
菜单颜色边框 30;44 #20ffffff #00000000 无
菜单颜色滚动条 30;44 #20ffffff #00000000 无
菜单颜色标题 0 #ffffffff #00000000 无
菜单颜色选择 30;47 #40000000 #20ffffff
菜单背景 pxelinux.cfg/picture.jpg #背景图片 640×480
菜单标题 选择你的命运!

标签 wds
菜单标签 Windows 部署服务(7、XP、启动映像)
内核 pxeboot.0

本地标签
菜单默认
菜单标签 从硬盘启动
本地启动0
输入 0x80

5) 复制 pxeboot.n12 文件并将其命名为 pxeboot.0
6) 之后,您需要教我们的 WDS 从通用引导加载程序启动。 2008 年,这是通过 GUI 完成的,2008 R2 通过命令行完成。 打开并输入:

  • wdsutil /set-server /bootprogram:bootx64pxelinux.com /architecture:x64
  • wdsutil /set-server /N12bootprogram:bootx64pxelinux.com /architecture:x64

命令行输出:
添加 WDS 多功能性
就是这样,我们启动并看到令人垂涎的屏幕:
添加 WDS 多功能性
这是一个基本配置,您可以自定义它以满足您的要求(公司徽标、启动顺序等)。目前,它只能将控制权转移到 WDS 并再次从硬盘驱动器启动。让我们教它启动 Ubuntu!

3. 教小鹰飞翔

我们在那里需要什么? ubuntu gparted? 让我们添加另一个 memtest 以进行排序。
让我们从最简单的开始:
MEMTEST
让我们在 Boot/x64 WDS 文件夹中为 Linux 文件创建一个单独的文件夹,例如 Distr。 以及我们各自系统的子文件夹:
添加 WDS 多功能性
下载 ISO 测试 并将以下行添加到我们的启动配置(默认文件)中:

标签内存测试
菜单标签 MemTest86+
内核 memdisk iso raw
initrd Linux/mt420.iso

这会将我们的小图像加载到内存中并从那里启动它。 不幸的是,这对我来说不适用于大图像。

加普特德
下载 最新版本,解压 iso 映像并获取三个文件 - /live/vmlinuz、/live/initrd.img 和 /live/filesystem.squashfs
这些文件是什么? (我的措辞可能有错误,如果我错了,请读者纠正)

  • vmlinuz(更常见的vmlinux) - 压缩内核文件
  • initrd.img - 根文件系统的映像(加载所需的最低限度)
  • filesystem.squashfs - 进程中使用的文件本身

我们将前两个文件放在下载文件夹中(在我的例子中,这是 Bootx64DistrGparted),第三个文件放在 IIS 服务器上(幸运的是,它已经针对 WSUSa 提出)。
抒情的题外话 - 不幸的是,将 iso 映像加载到具有大发行版的 memdisk 中的方法对我来说并不适用。 如果您突然知道成功的秘诀,这将是一个很好的解决方案,它可以让您从 iso 映像快速加载任何系统。
将 filesystem.squashfs 添加到 IIS,以便可以通过网络读取它(不要忘记为此扩展添加 MIME 标记)
添加 WDS 多功能性
现在向我们的 pxelinux.cfg/default 添加一个条目:

标签 GParted 直播
菜单标签 GParted Live
内核发行版/Gparted/vmlinuz
附加 initrd=Distr/Gparted/initrg.img boot=live config union=aufs noswap nopromt vga=788 fetch=http://192.168.10.10/Distr/Gparted/filesystem.squashfs

我们检查 - 它有效!
Ubuntu的12.04
我添加了两个可能的安装选项 - 全自动(感谢用户 马拉穆特文章 以及手动模式)
下载具有备用安装的文件,并从那里取出(像以前一样)两个文件 - initrd.gz 和 linux 并将它们放入 Distr/Ubuntu 中
将行添加到我们的 pxelinux.cfg/default
用于完全手动安装

标签 Ubuntu
内核 发行版/Ubuntu/linux
附加优先级=低 vga=正常 initrd=Distr/Ubuntu/initrd.gz

但对于自动安装,您需要一个带有响应设置的文件(您可以阅读 这里)并将其放在我们的网络服务器上。 我的装载机线如下所示:

标签 Ubuntu 自动安装
内核 发行版/Ubuntu/linux
附加 initrd=Distr/Ubuntu/initrd.gz ksdevice=eth0 locale=ru_RU.UTF-8 console-setup/layoutcode=ru url=http://192.168.10.10/Distr/Ubuntu/preseed.txt

对未来的用处
浏览有关该主题的材料并寻找我的问题的答案,我发现 精彩的文章亚历山大·埃罗费耶夫 包含通过网络下载卡巴斯基救援磁盘的描述。 不幸的是,它并没有为我起飞。 但这个工具确实很有用(不,不,是的,特别热心的用户会抓住这样的东西......手头有这样一个工具很有用)

结论

本文概述了 Microsoft WDS 角色为您提供的功能。 当我开始写这篇文章时,计划是宏伟的:关于加载上述系统的各个方面的最详细的 HOWTO...但是当材料开始只积累 WDS 本身时,故事的线索引导我进入了一些深度可能没有人会遇到……因此决定分享有关可能发生的事情的简短信息,如果可能的话,还提供优秀文章的链接。 如果读者读起来很有趣,或者我突然想要名声和金钱来用文章补充 Habrahabr 的存钱罐,您可以更详细地了解设置多功能 WDS 服务器的每个阶段。
我要再次感谢作者们 亚历山大·埃罗费耶夫 и 马拉穆特 他们的材料,每个人都会毫无例外地感兴趣。
当然,哈布雷已经有关于同一主题的文章,我试图从不同的角度强调这个问题或补充它: 时间 и 两个但未发表
感谢您的关注。
荣耀给机器人!

来源: habr.com

添加评论