1. 程式人生 > >PXE網絡裝機及kickstart無人值守自動裝機技術

PXE網絡裝機及kickstart無人值守自動裝機技術

PXE網絡裝機kickstart

PXE網絡裝機及kickstart無人值守自動裝機技術

PXE簡介

PXE(preboot execute environment,預啟動執行環境)是由Intel公司開發的最新技術,工作於Client/Server的網絡模式,支持工作站通過網絡從遠端服務器下載映像,並由此支持通過網絡啟動操作系統,在啟動過程中,終端要求服務器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)協議下載一個啟動軟件包到本機內存中執行,由這個啟動軟件包完成終端(客戶端)基本軟件設置,從而引導預先安裝在服務器中的終端操作系統。PXE可以引導多種操作系統,如:Windows95/98/2000/windows2003/windows2008/winXP/win7/win8,linux系列系統等。

  • 表現形式
    PXE最直接的表現是,在網絡環境下工作站可以省去硬盤,但又不是通常所說的無盤站的概念,因為使用該技術的PC在網絡方式下的運行速度要比有盤PC快3倍以上。當然使用PXE的PC也不是傳統意義上的TERMINAL終端,因為使用了PXE的PC並不消耗服務器的CPU,RAM等資源,故服務器的硬件要求極低。
  • 原理

    當計算機引導時,BIOS把 PXE Client 調入內存中執行,然後由 PXE Client 將放置在遠端的文件通過網絡下載到本地運行。

實驗過程

實驗準備

一臺Linux系統虛擬機(具備yum倉庫且光盤掛載好)、一臺win7系統虛擬機

實驗詳細

  1. 安裝tftpserver和dhcpserver及syslinux。
[root@linux6-1 ~]# yum install tftp-server dhcp vsftpd  syslinux -y
  1. 配置tftp服務器
[root@linux6-1 ~]# vim /etc/xinetd.d/tftp

        disable                 = no      //表示開啟tftp服務

3.配置DHCP服務器

[root@linux6-1 ~]# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf      //復制DHCP配置文件的模板

[root@linux6-1 ~]# vim /etc/dhcp/dhcpd.conf      //對復制過來的配置文件進行修改

#ddns-update-style none;          //刪除#表示開啟DNS動態更新

next-server 192.168.100.4;      //指定tftp服務器的地址
filename "/pxelinux.0";         //引導文件在tftp上的位置

subnet 192.168.100.0 netmask 255.255.255.0 {
        range 192.168.100.150 192.168.100.200;
        option routers 192.168.100.1;
}
  1. 將光盤掛載到ftp的站點目錄下
[root@linux6-1 ~]# mount /dev/sr0 /var/ftp/pub/
  1. 復制網絡啟動所需要的文件到tftp服務器的目錄下
[root@linux6-1 ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/     
[root@linux6-1 ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@linux6-1 ~]# cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default           //安裝菜單
[root@linux6-1 ~]# cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot            //Linux引導加載模塊
[root@linux6-1 ~]# cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/         //壓縮內核
[root@linux6-1 ~]# cp  /mnt/isolinux/vesamenu.c32 /var/lib/tftpboot      //圖形化安裝菜單
  1. 啟動所有服務器(記得關閉防火墻及增強性安全功能)
[root@linux6-1 ~]# service dhcpd start
正在啟動 dhcpd:                                           [確定]
[root@linux6-1 ~]# service vsftpd start
為 vsftpd 啟動 vsftpd:                                    [確定]
[root@linux6-1 ~]# service xinetd start
正在啟動 xinetd:                                          [確定]
[root@linux6-1 ~]# chkconfig --level 35 xinetd on         //在35模式下開機自啟動
[root@linux6-1 ~]# chkconfig --level 35 tftp  on        //在35模式下開機自啟動    
[root@linux6-1 ~]# service iptables stop
[root@linux6-1 ~]# setenforce 0
  1. win7使用PXE啟動就可以進行裝機操作了

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

kickstart無人值守自動裝機

首先安裝kickstart工具

[root@linux6-1 ~]# yum install system-config-kickstart -y

在桌面環境配置kickstart並生成ks.cfg文件

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

生成ks.cfg文件後我們可以在ftp目錄下創建一個新的目錄,將ks.cfg文件復制到該目錄下,然後修改下安裝菜單(default)文件

[root@linux6-1 ~]# cd /var/ftp/
[root@linux6-1 ftp]# mkdir rhel6
[root@linux6-1 ftp]# cp /root/ks.cfg rhel6/
[root@linux6-1 ftp]# cd /var/lib/tftpboot/pxelinux.cfg/
[root@linux6-1 pxelinux.cfg]# vim default

#prompt 1
label linux
  menu label ^Install or upgrade an existing system
  menu default
  kernel vmlinuz
  append ks=ftp://192.168.100.102/rhel6/ks.cfg initrd=initrd.img

然後重新啟動所有服務器,關閉防火墻及SELinux

[root@linux6-1 ~]# service dhcpd restart
[root@linux6-1 ~]# service xinetd restart
[root@linux6-1 ~]# service vsftpd restart
[root@linux6-1 ~]# service iptables stop
[root@linux6-1 ~]# setenforce 0

此時在win7系統上重新啟動並且啟動時按F12進入kickstart無人值守自動裝機

技術分享圖片

PXE網絡裝機及kickstart無人值守自動裝機技術