yum install dhcp xinetd syslinux tftp-server httpd
編輯dhcpdb配置(192.168.0.1為本機IP)
default-lease-time 6000; max-lease-time 72000; log-facility local7; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.100 192.168.0.200; option routers 192.168.0.1; filename "pxelinux.0"; next-server 192.168.0.1; }
修改tftp配置(no就是開啟)
disable = no
創建和掛載系統目錄
mkdir /var/www/html/centos7 mount -o loop CentOS7.iso /var/www/html/centos7/
復制vmlinuz
,和 initrd.img
到tftp訪問目錄的centos7子目錄中,因為以后會引導其它的系統,所以這里通過子目錄將不同的系統區分開
mkdir /var/lib/tftpboot/centos7 cp /var/www/html/centos7/images/pxeboot/initrd.img /var/lib/tftpboot/centos7/ cp /var/www/html/centos7/images/pxeboot/vmlinuz /var/lib/tftpboot/centos7/
vesamenu.c32
和menu.c32
是syslinux所擁有眾多模塊中的兩個,它們的功能是制定啟動器使用什么模式的背景。vesamenu.c32
圖形模式,menu.c32
文本模式。我選擇的是menu.c32
。
cp /usr/share/syslinux/menu.c32 /var/lib/tftpboot/ cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
建立pxelinux.cfg目錄,並在此目錄下建立default文件,編輯引導菜單。
mkdir /var/lib/tftpboot/pxelinux.cfg/ vi /var/lib/tftpboot/pxelinux.cfg/default
default配置內存,如果要多個系統可以在里面添加
default menu.c32 prompt 0 timeout 300 ONTIMEOUT local menu title ########## PXE Boot Menu ########## label 1 menu label ^1) Install CentOS 7 x64 with HTTP kernel centos7/vmlinuz append initrd=centos7/initrd.img method=http://192.168.0.1/centos7 devfs=nomount
啟動服務
systemctl start dhcpd.service
systemctl start xinetd.service
systemctl start tftp.service
systemctl start httpd.service
Windows
在default添加Windows引導
default menu.c32 prompt 0 timeout 300 ONTIMEOUT local menu title ########## PXE Boot Menu ########## label 1 menu label ^1) Install CentOS 7 x64 with HTTP kernel centos7/vmlinuz append initrd=centos7/initrd.img method=http://192.168.0.1/centos7 devfs=nomount label 2 menu label ^1) Install Windows 7 x64 KERNEL memdisk INITRD winpe_amd64.iso APPEND iso raw
安裝並配置samba
yum install smba -y
vi /etc/samba/smb.conf [global] workgroup = PXESERVER server string = Samba Server Version %v log file = /var/log/samba/log.%m max log size = 50 idmap config * : backend = tdb cups options = raw netbios name = pxe map to guest = bad user dns proxy = no public = yes ## For multiple installations the same time - not lock kernel kernel oplocks = no nt acl support = no security = user guest account = nobody [install] comment = Windows 7 Image path = /windows read only = no browseable = yes public = yes printable = no guest ok = yes oplocks = no level2 oplocks = no
創建共享目錄
mkdir /windows
驗證配置文件並啟動服務
testparm
systemctl start smb
掛載系統鏡像
mount -o loop /iso/cn_windows_7_enterprise_with_sp1_x64_dvd_u_677685.iso /mnt/
制作winpe鏡像
1.下載windows自動安裝工具包 ISO映像文件(安裝該工具包需要.net2.0)
http://www.microsoft.com/en-us/download/details.aspx?id=5753
2.裝載 KB3AIK_EN.iso 映像文件,運行StartCD.exe,點擊圖中選項,之后完成安裝
3. 點擊AIK命令提示符,(以管理員身份運行),並制作winpe_amd64.iso鏡像
4. 下面是制作命令,需要根據AIK安裝目錄修改命令中的路徑,pe鏡像路徑可以自行定義
copype amd64 C:\winPE_amd64 copy "C:\Program Files\Windows AIK\Tools\PETools\amd64\winpe.wim" C:\winpe_amd64\ISO\Sources\Boot.wim copy "C:\Program Files\Windows AIK\Tools\amd64\Imagex.exe" C:\winpe_amd64\ISO\ oscdimg -n -bC:\winpe_amd64\etfsboot.com C:\winpe_amd64\ISO C:\winpe_amd64\winpe_amd64.iso
5. 最后將做好的PE放到pxe服務器的/var/lib/tftpboot/目錄下