PXE是由Inter公司開發的網絡引導技術,工做在Client/Server模式,容許客戶機經過網路從遠程服務器下載引導鏡像,並加載安裝文件或者整個操做系統linux
DHCP+TFTP+DHTPvim
引導程序pxelinux.0
壓縮內核vmlinuz
系統初始化文件initrd.img
啓動菜單default
·
DHCP:自動分配IP地址,定位引導文件。
TFTP:存放安裝系統的引導文件,加載速度快(理由是由於引導文件小,須要的是高效操做)
FTP:存放系統文件,容量大 (TCP協議,系統文件須要的是安全穩定的傳輸)centos
CentOS7 做爲一臺服務端:運行DHCP服務用來分配地址、定位引導程序,運行TFTP服務器,提供引導程序下載
CentOS7做爲一臺客戶端:網卡支持PXE協議,主板支持網絡啓動安全
一、首先部署PXE服務器,要知道PXE是在局域網的環境下是使用的,可是由於咱們須要安裝服務所須要的軟件包(也能夠建立私有YUM倉庫),因此須要再添加一塊網卡設置爲僅主機模式,這樣就既能夠安裝所需的軟件包,又能夠再局域網內進行引導服務
服務器
·網絡
一、首先咱們把新添加的網卡進行配置,將ens33的網絡配置文件模板複製一份到ens36裏,而後輸入"vim ifcfg-ens36",進入ens36的網絡配置文件裏,將ens36配置爲靜態IP,按"/"輸入dhcp,敲擊回車,按"dw"刪除改成"static",將配置文件中全部的"ens33"改成"ens36",按"dd"刪除UUID=c9fb678c-82b2-44b7-93ee-ab6d56e066cb,再配置上網關地址爲192.168.100.1,按"wq"保存退出,這樣ens36的網絡就配置好了,配置完以後從新啓動,讓其生效app
[root@localhost ~]# cd /etc/sysconfig/network-scripts/ [root@localhost network-scripts]# cp -p ifcfg-ens33 ifcfg-ens36 [root@localhost network-scripts]# vim ifcfg-ens36 [root@localhost network-scripts]# service network restart
·dom
二、使用"ifconfig"命令查看修改後的ens36IP地址、MAC地址是否生效ide
[root@localhost network-scripts]# ifconfig
·工具
三、雙網卡配置結束以後咱們就要開始安裝服務了,首先安裝DHCP服務,輸入"yum intsall dhpd -y"開始安裝DHCP服務
[root@localhost network-scripts]# yum install dhcp -y
·
四、接下里就是配置DHCP的過程,輸入"cp -p /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf"複製一個模板到DHCP配置文件中,輸入"yes"確認覆蓋
[root@localhost network-scripts]# cp -p /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
·
五、模板複製好了以後進入DHCP的配置文件裏進行修改
詳細步驟[root@localhost network-scripts]# vim /etc/dhcp/dhcpd.conf
subnet 192.168.100.0 netmask 255.255.255.0 { range 192.168.100.20 192.168.100.30; option routers 192.168.100.100; option domain-name-servers 10.10.10.10; filename "pxelinux.0"; }
subnet 192.168.100.0 netmask 255.255.255.0(設置網段爲192.168.100.0、MAC地址不變)
range 192.168.100.20 192.168.100.30;(配置DHCP服務分配給客戶端的地址範圍)
option routers 192.168.100.100;(網關設置爲指向本地)
option domain-name-servers 10.10.10.10;(分配DNS地址)
net-server 192.168.100.100;(指向TFTP服務器)
filename "pxelinux.0";(指向引導文件位置)
·
六、配置完DHCP配置文件以後就能夠安裝引導程序文件
[root@localhost network-scripts]# yum install syslinux -y
·
七、安裝完以後能夠輸入"[root@localhost network-scripts]# rpm -ql syslinux | grep pxelinux.0",能夠看到文件的路徑位置,可是咱們應該把它放在TFTP裏,由於剛纔在配置文件中咱們指向了TFTP路徑"pxelinux.0",
·
八、安裝咱們所須要的使用的tftp服務,輸入[root@localhost network-scripts]# yum install tftp-server -y"
[root@localhost network-scripts]# yum install tftp-server -y
·
九、tftp服務安結束以後咱們須要知道它的配置文件和站點,輸入"[root@localhost ~]# rpm -ql tftp-server",其中"/etc/xinetd.d/tftp"是tftp服務的配置文件,"/var/lib/tftpboot"是tftp服務的站點
[root@localhost ~]# rpm -ql tftp-server
·
十、如今把引導程序"pxelinux.0"放入到tftp服務站點裏
[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
·
十一、進入配置文件修改enable啓動tftp服務,輸入"vim /etc/xinetd.d/tftp",將配置文件中"enable"一行中的"yes"改成"no"便可
[root@localhost ~]# vim /etc/xinetd.d/tftp
·
十二、安裝ftp服務使用裏面的鏡像文件,輸入"yum install vsftpd -y"
[root@localhost ~]# yum install vsftpd -y
·
1三、進入到ftp站點中拆建立文件夾"centos7"做爲掛載目錄,能夠選擇複製到"centos7"也能夠直接掛載,這裏須要把虛擬機中的鏡像文件鏈接上才能夠進行掛載
[root@localhost ~]# cd /var/ftp/ [root@localhost ftp]# mkdir centos7 [root@localhost ftp]# mount /dev/sr0 /var/ftp/centos7
·
1四、將初始化文件和壓縮內核文件放到"/var/libtftpboot/(tftp服務站站點),
[root@localhost pxeboot]# cp initrd.img vmlinuz /var/lib/tftpboot/
·
1五、經過查看能夠看到tftp服務站點中就差啓動菜單配置好,接下來就是配置啓動菜單,進入到"tftpboot"中建立"pxelinux.cfg"目錄(此目錄名千萬不能錯)
[root@localhost tftpboot]# mkdir pxelinux.cfg
·
1六、進入到pxelinux.cfg中,手動編輯啓動菜單"default",編輯完以後"wq"保存退出
詳細配置
default auto prompt 1 label auto kernel vmlinuz append initrd=initrd.img method=ftp://192.168.100.100/centos7 label linux text kernel vmlinuz append text initrd=initrd.img method=ftp://192.168.100.100/centos7 label linux rescue kernel vmlinuz append rescue initrd=initrd.img method=ftp://192.168.100.100/centos7
·
1七、全部的文件都配置好了以後就剩下最後一步了,關閉防火牆、加強性安全功能,而後啓動全部服務
[root@localhost pxelinux.cfg]# systemctl stop firewalld.service(關閉防火牆) [root@localhost pxelinux.cfg]# setenforce 0(關閉加強性安全功能) [root@localhost pxelinux.cfg]# systemctl start dhcpd(啓動dhcp服務) [root@localhost pxelinux.cfg]# systemctl start tftp(啓動tftp服務) [root@localhost pxelinux.cfg]# systemctl start vsftpd(啓動ftp服務)
一、要想實現裝機過程無需手動,咱們這裏就須要安裝"kickstart"
[root@localhost ~]# yum install system-config-kickstart -y
·
二、安裝完以後咱們進入虛擬機中,點擊應用程序在系統工具中能夠看到"Kiskstart",用它建立模板文件
·
三、點擊進入就開始配置"Kiskstart"程序
基本配置
默認語言:中文(簡體)
鍵盤:U.S.English
時區:Asia/Shanghai
Root密碼:
勾選安裝後重啓
安裝方法
安裝方法:執行全新安裝
安裝方法:FTP
分區信息
點擊添加
/boot:500M
/home:4096M
swap:4096M
/:使用磁盤上所有未分配空間
網絡設置
點擊添加網絡設備
防火牆設置
安裝後腳本
基本配置已經知足,點擊左上角的文件保存,將文件保存在文件系統"/var/ftp/
·
四、"Kiskstart"配置完,咱們須要把"root"目錄中"anaconda-ks.cfg"裏的主機安裝包做爲模板複製到"ks.cfg"中,若是不復制的話安裝的時候選組件就會失敗
[root@localhost ftp]# vim anaconda-ks.cfg [root@localhost ftp]# vim ks.cfg
五、先進入到"/var/lib/tftpboot/中,再進入到"/pxelinux.cfg"中能夠看到"default",編輯"default"在自動模式裏添加kickstart配置文件的路徑
[root@localhost ~]# cd /var/lib/tftpboot/ [root@localhost tftpboot]# cd pxelinux.cfg/ [root@localhost pxelinux.cfg]# vim default
六、最後咱們新建一臺虛擬機,在安裝時選擇稍後稍後安裝操做系統,而後選擇僅主機模式,點擊運行虛擬機就能夠看到自動安裝CentOS7了