PXE Server就是DHCP TFTP服务,如果想使用Server上的文件,可以加入FTP或Samba等服务.我用经常用的是PXE启动WinPE环境,在Linux 中再加入Samba服务.WinPE中用 net use 把共享映射到WinPE下.就可以使用Server上的文件了.
下面Linux PXE是我在VirtualBox上RHEL6系统上配置的.
1.配置Linux DHCP Server
以下是dhcpd.conf配置文件:这里只是简单给出 的配置项.
ddns-update-style interim;
ignore client-updates;
allow booting;
allow bootp;
class "pxeclients" {
match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
next-server 192.168.56.254;
filename "pxeboot.0";
}
subnet 192.168.56.0 netmask 255.255.255.0 {
option routers 192.168.56.1;
range dynamic-bootp 192.168.56.10 192.168.56.250;
default-lease-time 600;
max-lease-time 7200;
}
下图是我的DHCP配置文件内容:红色方框中的参数是 的,一个都不能少.
2.配置Linux下的tftp Server
(1)创建remap文件,/tftpboot/tftpd.remap.该文件内容如下:
加入这一行:rg \ /
(2)编辑/etc/xinitd.d/tftp文件.
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -u nobody -s /tftpboot -m /tftpboot/tftpd.remap -vvv
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
下图是我的xinitd方式启动TFTP的配置内容:
3.启动各服务
#service dhcpd restart
#service xinetd restart
4.创建BCD启动文件(摘自微软官方)
在此步骤中,将使用 BCDEdit 工具创建 BCD 存储.BCDEdit 工具只能在 Windows7 计算机或 Windows PE 环境中运行.BCDEdit 工具位于 WindowsSystem32 目录中.
1.
拥有帝国一切,皆有可能。欢迎访问phome.net在 Windows® 7 计算机或 Windows PE 环境中,使用 BCDEdit 工具创建一个 BCD 存储.例如,
Bcdedit -createstore c:BCD
2.创建 RAMDISK 设置.例如,
Bcdedit -store c:BCD -create {ramdiskoptions} /d "Ramdisk options"
Bcdedit -store c:BCD -set {ramdiskoptions} ramdisksdidevice boot
Bcdedit -store c:BCD -set {ramdiskoptions} ramdisksdipath bootboot.sdi
3.(可选)创建内核调试程序设置.例如,
Bcdedit -store c:BCD -create {dbgsettings} /d "Debugger settings"
Bcdedit -store c:BCD -set {dbgsettings} debugtype serial
Bcdedit -store c:BCD -set {dbgsettings} baudrate 115200
Bcdedit -store c:BCD -set {dbgsettings} debugport 1
4.为 Windows PE 映射创建 OSLoader 设置.例如,
Bcdedit -store c:BCD -create /d "MyWinPE Boot Image" /application osloader 如果 s 命令成功,则计算机将返回 GUID 值.下列示例将此值指代为 guid1.
Bcdedit -store c:BCD -set {guid1} systemroot Windows
Bcdedit -store c:BCD -set {guid1} detecthal Yes
Bcdedit -store c:BCD -set {guid1} winpe Yes
Bcdedit -store c:BCD -set {guid1} osdevice ramdisk=[boot]Bootboot.wim,{ramdiskoptions}
Bcdedit -store c:BCD -set {guid1} device ramdisk=[boot]Bootboot.wim,{ramdiskoptions}
5.创建 BOOTMGR 设置.例如,
Bcdedit -store c:BCD -create {bootmgr} /d "Windows BootManager" /inherit {dbgsettings}
Bcdedit -store c:BCD -set {bootmgr} timeout 30
Bcdedit -store c:BCD -displayorder {guid1} {guid2}
其中,guid1、guid2 等等是每个 .wim 文件条目对应的 GUIDS.
|