1. 程式人生 > >PXE結合Kickstart實現無人值守安裝CentOS6.5

PXE結合Kickstart實現無人值守安裝CentOS6.5

dhcp 掛載 alt 允許 ftp站點 mark -o -s image

簡介

PXE:Pre-boot execution Environment,預啟動執行環境,是由Inte公司開發的網絡引導技術,工作在 Client/Server模式,允許客戶機通過網絡從遠程服務器下載引導鏡像,並加載安裝文件或者整個操作系統

安裝條件

1、客戶機的網卡支持PXE協議(集成 BOOTROM芯片),且主板支持網絡引導。目前絕大多數服務器和大多數PC都能夠提供此支持,只需在BIOS設置中允許從Network或LAN啟動即可
2、網絡中有一臺DHCP服務器以便為客戶機自動分配地址、指定引導文件位置
3、服務器通過TFTP( Trivial File Transfer Protocol,簡單文件傳輸協議)提供引導鏡像文件的下載。(之所以簡單,不會像ftp一樣存放大容量的文件,但是響應、執行速度比ftp快的多)

實驗環境

系統環境:centos6.5
服務器端:192.168.1.77/24
yum掛載目錄:/mnt/sr0
ftp站點目錄:/var/ftp/redhat6

搭建步驟:

一、準備工作

1、服務器端、客戶端關閉防火墻、Selinux

[root@Init5 ~]# vim /etc/sysconfig/selinux
技術分享圖片

[root@Init5 ~]# chkconfig iptables off #開機啟動關閉防火墻
技術分享圖片

二、搭建PXE遠程安裝服務器

1、準備安裝CentOS6安裝源

[root@Init5 ~]# mount /dev/sr0 /mnt/sr0/            #掛載廣盤目錄
[root@Init5 ~]# yum -y install vsftpd               #安裝vsftpd服務
[root@Init5 ~]# mkdir /var/ftp/redhat6              #ftp站點創建共享目錄
[root@Init5 ~]# cp -rf /mnt/sr0/* /var/ftp/redhat6/ #將光盤文件拷貝到站點中
[root@Init5 ~]# /etc/init.d/vsftpd start          #啟動ftp服務

[root@Init5 ~]# vim /etc/yum.repos.d/local.repo

技術分享圖片

2、安裝並啟用TFTP服務

[root@Init5 ~]# yum -y install tftp-server
[root@Init5 ~]# vim /etc/xinetd.d/tftp  #tftp是交由xinetd管理,xinetd目錄下有對應的和安裝的軟件包相同的文件

技術分享圖片

[root@Init5 ~]# /etc/init.d/xinetd start #啟動服務

[root@Init5 ~]# tail /var/log/messages 

技術分享圖片

3、準備內核、初始化鏡像文件

[root@Init5 ~]# cd /mnt/sr0/images/pxeboot/
[root@Init5 pxeboot]# ls

技術分享圖片

[root@Init5 pxeboot]# cp initrd.img vmlinuz /var/lib/tftpboot/ #將內核和鏡像文件拷貝到tftp的根目錄下

4、準備PXE引導程序、啟動菜單文件、圖形化安裝菜單

[root@Init5 ~]# yum -y install syslinux #pxe的引導程序名字是pxellinux.0,需要手工安裝
[root@Init5 ~]# cd /usr/share/syslinux/
[root@Init5 syslinux]# ls

技術分享圖片

[root@Init5 syslinux]# cp pxelinux.0 /var/lib/tftpboot/ #將引導程序放在tftp的根目錄下,註意此時內核、鏡像文件、引導程序已經安裝完成

[root@Init5 ~]# cd /mnt/sr0/isolinux/
[root@Init5 isolinux]# cp isolinux.cfg /var/lib/tftpboot/  #將啟動菜單放入tftp根目錄下
[root@Init5 isolinux]# cp vesamenu.c32 /var/lib/tftpboot/  #將圖形化安裝菜單放入tftp根目錄下

[root@Init5 ~]# cd /var/lib/tftpboot/
[root@Init5 tftpboot]# mkdir pxelinux.cfg #創建啟動菜單目錄
[root@Init5 tftpboot]# cp isolinux.cfg pxelinux.cfg/default #將啟動菜單放入到固定目錄中,並且修改文件名為default,硬性指標!

5、安裝並啟用DHCP服務

[root@Init5 ~]# yum -y install dhcp
[root@Init5 ~]# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf 
[root@Init5 ~]# vim /etc/dhcp/dhcpd.conf

技術分享圖片

[root@Init5 ~]# /etc/init.d/dhcpd start

三、驗證PXE網絡安裝,為客戶機安裝系統

1、調整BIOS設置,以便從網絡引導

技術分享圖片

2、自動獲取IP地址,並指定CentOS安裝源

技術分享圖片

3、陸續安裝

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

四、Kickstart無人值守安裝

1、配置安裝應答參數

[root@Init5 ~]# yum -y install system-config-kickstart
技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片
技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

2、保存自動應答文件

技術分享圖片

[root@Init5 ~]# vim ks.cfg #將其保存到root家目錄中

技術分享圖片

五、PXE與kickstart結合使用實現批量自動裝機

1、將應答文件部署在客戶機可訪問的位置

[root@Init5 ~]# cp ks.cfg /var/ftp/redhat6/
[root@Init5 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default

技術分享圖片

2、新建虛擬機,測試

技術分享圖片

3、安裝過程自動化,略……

4、驗證無人值守安裝

技術分享圖片

PXE結合Kickstart實現無人值守安裝CentOS6.5