天天看點

ctenos7 pxe無盤站

搭建PXE無盤站

--centos7

一、PXE

PXE(preboot execute environment,預啟動執行環境)是由Intel公司開發的最新技術,工作于Client/Server的網絡模式,支援工作站通過網絡從遠端伺服器下載下傳映像,并由此支援通過網絡啟動作業系統,在啟動過程中,終端要求伺服器配置設定IP位址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)協定下載下傳一個啟動軟體包到本機記憶體中執行,由這個啟動軟體包完成終端(用戶端)基本軟體設定,進而引導預先安裝在伺服器中的終端作業系統。

二、PXE啟動原理

當計算機引導時,BIOS把 PXE Client 調入記憶體中執行,然後由 PXE Client 将放置在遠端的檔案通過網絡下載下傳到本地運作。

三、啟動過程

PXE是RPL的更新品,它是Preboot Execution Environment的縮寫。它們的不同之處在于RPL是靜态路由,而PXE是動态路由。其通信協定采用TCP/IP,與Internet連接配接高效而可靠,PXE無盤工作站的啟動過程分析如下:

用戶端個人電腦開機後, 在 TCP/IP Bootrom 獲得控制權之前先做自我測試。

Bootprom 送出 BOOTP/DHCP 要求以取得 IP。

如果伺服器收到個人電腦所送出的要求, 就會送回 BOOTP/DHCP 回應,内容包括

用戶端的 IP 位址, 預設網關, 及開機映像檔案。否則,伺服器會忽略這個要求。

Bootprom 由 TFTP 通訊協定從伺服器下載下傳開機映像檔案。

個人電腦通過這個開機映像檔案開機, 這個開機檔案可以隻是單純的開機程式也可

以是作業系統。

開機映像檔案将包含 kernel loader 及壓縮過的 kernel,此 kernel 将支援NTFS root

系統。

遠端用戶端根據下載下傳的檔案啟動機器。

(此文重要講操作 原理可以參照其他的詳細資料)

四、操作步驟

1、配置DHCP服務—提供IP

.# yum -y install dhcp

搭建的pxe伺服器的ip是192.168.6.100 則對DHCP的配置檔案

/etc/dhcp/dhcpd.conf 配置如下:

ctenos7 pxe無盤站

啟動并配置開啟啟動dhcp服務

.# systemctl start dhcpd

.# systemctl enable dhcpd

2、安裝tftp服務和關聯包

.# yum install -y tftp*

安裝xinetd守護程序,因為tftp依賴于xinetd

.# yum install -y xinetd

修改tftp配置檔案/etc/xinetd.d/tftp,将disable= yes改為disable=no

ctenos7 pxe無盤站

啟動并配置開機自動啟動xinetd程序

.# systemctl start xinetd

.# systemctl enable xinetd

.# systemctl start tftp

3、配置http為檔案倉庫

安裝http服務

.# yum -y install httpd

放入待安裝系統盤,并直接用CD光牒的package當做安裝倉庫

.# mkdir /var/www/html/centos7

.# mount /dev/cdrom /var/www/html/centos7/

4、修改ks.Cfg

将目前系統中的ks檔案拷貝到/var/www/html/路徑下

.# cp /root/anaconda-ks.cfg /var/www/html/ks.cfg

ks.cfg的作用是預先指定好需要的安裝選項(包括系統鏡像路徑,安裝元件,系統語言,網絡配置,使用者及密碼等),當正式安裝時PXE Client将會很據該檔案去自動配置安裝,進而避免了大規模部署時的大量重複操作。(具體的原理 可以自行在網上了解 後期我會補上來

ctenos7 pxe無盤站

5、 相關系統引導檔案存儲

安裝syslinux,它是一個功能強大的引導加載程式,而且相容各種媒體。

.# yum install -y syslinux

pxelinux.0檔案名要和dhcp配置檔案内的一緻

.# cp/usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

copyCD光牒目錄中的vmlinuz和initrd.img,這兩個檔案相當于系統啟動時/boot目錄下的啟動檔案,這個用來引導anacoda而不是根

.# cp/mnt/cdrom/images/pxeboot/{vmlinuz,initrd.img} \

/var/lib/tftpboot/

copy pxe引導所需要的配置檔案,splash.png:背景圖.boot.msg啟動智語,vesamenu.c32:顯示同行界面用的程式.

.# cp/mnt/cdrom/isolinux/{boot.msg,vesamenu.c32,splash.png}\

/var/lib/tftpboot/

pxe啟動時顯示配置檔案資訊,和CD光牒啟動類似.

.# mkdir/var/lib/tftpboot/pxelinux.cfg

.# cp/mnt/cdrom/isolinux/isolinux.cfg\

/var/lib/tftpboot/pxelinux.cfg/default

6、配置default系統啟動檔案

在default配置檔案/var/lib/tftpboot/pxelinux.cfg/default中找到下面标簽

ctenos7 pxe無盤站

它的目的是用于告訴PXEClient去哪裡可以找到鏡像檔案以及ks.cfg配置檔案。

7、 檢查PXE Server的狀态并關閉防火牆、啟動PXE Client

.# service dhcpd status

.# service tftp status

.# service httpd status

以上三者結果都應該為active(running)

.# systemctl stop firewalld

.# systemctl disable firewalld

.# service firewalld status

結果都應該為inactive(dead)

繼續閱讀