【PXE】VMware上CentOS7 .x的PXE安裝

一、說(shuō)明

什么是PXE?

PXE(Pre-boot Execution Environment,預(yù)啟動(dòng)執(zhí)行環(huán)境)是由Intel公司開發(fā)的最新技術(shù),工作于Client/Server的網(wǎng)絡(luò)模式,支持工作站通過(guò)網(wǎng)絡(luò)從遠(yuǎn)端服 務(wù)器下載映像,并由此支持通過(guò)網(wǎng)絡(luò)啟動(dòng)操作系統(tǒng),在啟動(dòng)過(guò)程中,終端要求服務(wù)器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)協(xié)議下載一個(gè)啟動(dòng)軟件包到本機(jī)內(nèi)存中執(zhí)行,由這個(gè)啟動(dòng)軟件包完成終端基本軟件設(shè)置,從而引導(dǎo)預(yù)先安裝在服務(wù)器中的終端操作系統(tǒng)。

嚴(yán)格來(lái)說(shuō),PXE 并不是一種安裝方式,而是一種引導(dǎo)方式。

進(jìn)行 PXE 安裝的必要條件是在要安裝的計(jì)算機(jī)中必須包含一個(gè) PXE 支持的網(wǎng)卡(NIC),即網(wǎng)卡中必須要有 PXE Client。PXE 協(xié)議可以使計(jì)算機(jī)通過(guò)網(wǎng)絡(luò)啟動(dòng)。此協(xié)議分為 Client端和 Server 端,而PXE Client則在網(wǎng)卡的 ROM 中。當(dāng)計(jì)算機(jī)引導(dǎo)時(shí),BIOS 把 PXE Client 調(diào)入內(nèi)存中執(zhí)行,然后由 PXE Client 將放置在遠(yuǎn)端的文件通過(guò)網(wǎng)絡(luò)下載到本地運(yùn)行。

運(yùn)行 PXE 協(xié)議需要設(shè)置 DHCP 服務(wù)器和 TFTP 服務(wù)器,DHCP 服務(wù)器會(huì)給 PXE Client(將要安裝系統(tǒng)的主機(jī))分配一個(gè) IP 地址,由于是給 PXE Client 分配 IP 地址,所以在配置 DHCP 服務(wù)器時(shí)需要增加相應(yīng)的 PXE 設(shè)置。此外,在 PXE Client 的 ROM 中,已經(jīng)存在了 TFTP Client,那么它就可以通過(guò) TFTP 協(xié)議到 TFTP Server 上下載所需的文件了。

部署PXE需要哪些服務(wù)?

DHCP服務(wù),分配IP地址,定位引導(dǎo)程序

DNS服務(wù),為客戶機(jī)分配主機(jī)名

TFTP服務(wù),提供引導(dǎo)程序下載

HTTP服務(wù)(或ftp/nfs),提供yum安裝源


客戶機(jī)應(yīng)具備的哪些條件?

網(wǎng)卡ROM必須支持PXE協(xié)議

主板支持網(wǎng)絡(luò)啟動(dòng)


PXE工作流程圖




PXE+Kickstart安裝過(guò)程




二、實(shí)驗(yàn)環(huán)境

操作系統(tǒng):CentOS7.3 (GNOME桌面版)

pxeServer: 192.168.2.2


三、設(shè)置pxeServer網(wǎng)絡(luò)

我們配置pxe的安裝網(wǎng)段為 192.168.2.0/24,設(shè)置在自定義網(wǎng)絡(luò)VMnet1


設(shè)置VMware網(wǎng)絡(luò),禁用VMnet1的本地DHCP


配置pxeServer在VMnet1網(wǎng)絡(luò)中的靜態(tài)IP為192.168.2.2

# vim /etc/sysconfig/network-scripts/ifcfg-ens33

#############################

TYPE="Ethernet"

BOOTPROTO="static"

NAME="ens33"

ONBOOT="yes"

IPADDR="192.168.2.2"

NETMASK="255.255.255.0"

GATEWAY="192.168.2.1"

###############################


# systemctl restart network

# ip addr list




四、在pxeServer上搭建本地yum源

用CentOS7.3 鏡像搭建本地yum源,如果ISO映像文件路徑中沒(méi)有,可自行上傳搭建。



#? mount? /dev/cdrom? /mnt/


# mkdir? /etc/yum.repos.d/backup

# mv? /etc/yum.repos.d/*.repo? /etc/yum.repos.d/backup


# vim /etc/yum.repos.d/pxe.repo

#######################

[development]? ? ? ? ? ? ? ? ?

?// 注意:此處[]內(nèi)容必須為development

name=pxe

baseurl=file:///mnt

enabled=1

gpgcheck=0

#########################

# yum clean all

# yum repolist

設(shè)置開機(jī)自動(dòng)掛載

#? vim? /etc/fstab

#####################################

/dev/cdrom? ? /mnt? iso9660? ? defaults? ? 0 0

#####################################

# mount -a


五、在pxeServer上安裝軟件包


#? yum? -y install? ? dhcp? httpd? xinetd? tftp-server?


配置httpd,為客戶端裝機(jī)提供http網(wǎng)絡(luò)yum源

#? mkdir? /var/www/html/CentOS7/?

# cp? -r? /mnt/*? /var/www/html/CentOS7/

創(chuàng)建kickstarts文件目錄

# mkdir? /var/www/html/kickstarts


配置xinetd,對(duì)服務(wù)tftp訪問(wèn)進(jìn)行控制

# vim /etc/xinetd.d/tftp

將配置文件中 yes改成no,開啟服務(wù)


配置DHCP,為客戶端裝機(jī)提供IP

# vim /etc/dhcp/dhcpd.conf

##################################

subnet 192.168.2.0 netmask 255.255.255.0 {

? ? range 192.168.2.110 192.168.2.150;

filename "pxelinux.0";

next-server 192.168.2.2;

}

###################################


配置pxe裝機(jī)文件

#? yum? -y? install? syslinux?

# rpm -ql? syslinux? |grep pxe

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

# cp /usr/share/syslinux/{chain.c32,mboot.c32,menu.c32,memdisk}? /var/lib/tftpboot

# cp /var/www/html/CentOS7/isolinux/{initrd.img,vmlinuz}? ? /var/lib/tftpboot/

#? ll? ? /var/lib/tftpboot/

在tftp的根目錄下新建pxe文件夾和文件

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

#? vim? /var/lib/tftpboot/pxelinux.cfg/default

########################################################################

default menu.c32

? ? prompt 5

? ? timeout 30

? ? MENU TITLE CentOS7.x PXE

? ? LABEL linux_auto

? ? MENU LABEL Install CentOS7.x x86_64 Auto

? ? KERNEL vmlinuz

? APPEND initrd=initrd.img inst.repo=http://192.168.2.2/CentOS7/ ks=http://192.168.2.2/kickstarts/centos7.cfg

? ? LABEL linux

? ? MENU LABEL Install CentOS7.x x86_64

? ? KERNEL vmlinuz

? ? APPEND initrd=initrd.img inst.repo=http://192.168.2.2/CentOS7/

###########################################################################


五、生成 kickstarts應(yīng)答文件

#? yum? -y? install system-config-kickstart

#? system-config-kickstart



# cp? /root/centos7.cfg? /var/www/html/kickstarts/


六、關(guān)閉pxeServer防火墻,啟動(dòng)服務(wù)


# setenforce 0

# sed? -i? 's/^SELINUX=.*/SELINUX=permissive/g'? /etc/selinux/config


# systemctl? stop firewalld

# systemctl disable firewalld


# systemctl? start xinetd httpd dhcpd? tftp

# systemctl? enable? xinetd httpd dhcpd? tftp

# systemctl status? xinetd httpd dhcpd? tftp




七、創(chuàng)建虛擬機(jī),啟動(dòng)PXE 安裝



# systemctl get-default

# systemctl set-default graphical.target

#? reboot



八、參考


PXE 裝機(jī)詳解

https://blog.51cto.com/1992tao/1870431

通過(guò)PXE網(wǎng)絡(luò)安裝CentOS7操作系統(tǒng)

https://o-my-chenjian.com/2018/07/11/Install-CentOS7-By-Using-PXE

CentOS 7 安裝大全 之 PXE網(wǎng)絡(luò)篇

https://blog.csdn.net/sqa_star/article/details/84029965

PXE+kickstart無(wú)人值守安裝CentOS 7

https://www.cnblogs.com/f-ck-need-u/p/7342919.html

PXE 和 Kickstart 部署記錄

https://blog.tankywoo.com/2014/01/13/pxe-and-kickstart-deploy-operation.html

kickstart文件

http://www.itdecent.cn/p/46993025012d

圖形化生成kickstart文件

https://blog.51cto.com/13150617/1973002

kickstart-由于下載軟件包信息失敗,軟件包選擇被禁止

https://blog.51cto.com/zaa47/1927790

https://www.linuxidc.com/Linux/2018-07/153260.htm

基于DHCP、PXE和kickstart自動(dòng)安裝設(shè)置CentOS 7.3

http://hmli.ustc.edu.cn/doc/linux/centos-autoinstall.htm

KICKSTART無(wú)人值守安裝

https://blog.oldboyedu.com/autoinstall-kickstart

PXE Kickstart 無(wú)人值守安裝系統(tǒng)

http://www.opsroad.com/759.html

CentOS7安裝后重啟出現(xiàn)Initial setup of CentOS Linux 7 (core)

https://blog.csdn.net/jyusun/article/details/70231416

如何執(zhí)行 KICKSTART 安裝?

https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/7/html/installation_guide/sect-kickstart-howto#sect-kickstart-installation-starting

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容