PXE無人值守安裝(自動安裝!)

2020-09-22 13:00:20


前言

如今電腦變得越來越多,裝機也變得麻煩了起來,今天這篇文章就解決了裝機問題!可以自動安裝多個機器。


一、設定

1.網路裝機

網路裝機的優勢
• 規模化:同時裝配多臺主機
• 自動化:裝系統、設定各種服務
• 遠端實現:不需要光碟、U盤等物理安裝媒介

• 需要哪些服務元件?
– DHCP服務,分配IP地址、定位載入程式
– TFTP服務,提供載入程式下載
– HTTP服務,提供yum安裝源

2.主機設定

1.設定ip 192.168.4.5
2.設定yum源掛載點為/dvd
3.關閉防火牆與selinux

二、部署DHCP伺服器

1.原理

• Dynamic Host Configuration Protocol
– 動態主機設定協定,由 IETF(Internet 網路工程師任務小組)組織制定,用來簡化主機地址分配管理:

• 主要分配以下入網引數
– IP地址/子網掩碼/廣播地址
– 預設閘道器地址、DNS伺服器地址

原理:廣播進行,先到先得(一個網路中只能有一個DHCP)
• DHCP地址分配的四次對談
– DISCOVERY --> OFFER --> REQUEST -->ACK

• 伺服器端基本概念
– 租期:允許客戶機租用IP地址的時間期限,單位為秒
– 作用域:分配給客戶機的IP地址所在的網段
– 地址池:用來動態分配的IP地址的範圍

2.操作

1.裝包dhcpd
2.修改組態檔/etc/dhcp/dhcpd.conf
subnet 192.168.4.0 netmask 255.255.255.0 {
  range 192.168.4.100 192.168.4.200;
  option domain-name-servers 192.168.4.5;
  option routers 192.168.4.254;
  default-lease-time 600;
  max-lease-time 7200;
  next-server 192.168.4.5;#指定下一個伺服器地址
  filename "pxelinux.0";#指定網路卡引導檔名稱
}
3.重新啟動dhcpd

注:讀取組態檔方便修改(無需手打)
在這裡插入圖片描述

二.部署pxe

1.原理

PXE網路
• PXE,Pre-boot eXecution Environment
– 預啟動執行環境,在作業系統之前執行
– 可用於遠端安裝

• 工作模式
– PXE client 整合在網路卡的啟動晶片中
– 當計算機引導時,從網路卡晶片中把PXE client調入記憶體
執行,獲取PXE server設定、顯示選單,根據使用者選
擇將遠端載入程式下載到本機執行

• 客戶機應具備的條件
– 網路卡晶片必須支援PXE協定
– 主機板支援從網路卡啟動

1.裝包tftp-server
2.部署pxelinux.0
# yum -y install syslinux-4.05-13.el7.x86_64
# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ 
3.部署選單檔案
# mkdir /var/lib/tftpboot/pxelinux.cfg
# ls /var/lib/tftpboot/
# cp /dvd/isolinux/isolinux.cfg  /var/lib/tftpboot/pxelinux.cfg/default
4.部署圖形模組(vesamenu.c32)與背景圖片(splash.png)
# cp /dvd/isolinux/vesamenu.c32 /dvd/isolinux/splash.png  /var/lib/tftpboot/
5.部署啟動核心(vmlinuz)與驅動程式(initrd.img)
# cp /dvd/isolinux/vmlinuz /dvd/isolinux/initrd.img /var/lib/tftpboot/
6.全部檔案
# ls /var/lib/tftpboot/
initrd.img  pxelinux.cfg  vesamenu.c32
pxelinux.0  splash.png    vmlinuz
7.修改選單檔案
# vim /var/lib/tftpboot/pxelinux.cfg/default
1 default vesamenu.c32    #預設載入圖形模組
2 timeout 600             #預設讀秒時間 1/10
10 menu background splash.png       #背景圖片
11 menu title NSD1905 PXE Server !  #標題顯示
61 label linux
62 menu label Install CentOS 7.5   #選單顯示的內容  
63 menu  default                  #讀秒結束後預設選擇
64 kernel vmlinuz                  #載入啟動核心
65 append initrd=initrd.img        #載入驅動程式

重新啟動dhcpd服務與tftp服務

[root@svr7 ~]# systemctl restart tftp
[root@svr7 ~]# systemctl status tftp

[root@svr7 ~]# systemctl restart dhcpd
[root@svr7 ~]# systemctl status dhcpd

三.部署http

1.原理

原理:提供yum安裝源

1.裝包 httpd
2.
[root@svr7 ~]# mkdir /var/www/html/centos
[root@svr7 ~]# mount /dev/cdrom  /var/www/html/centos
mount: /dev/sr0 防寫,將以唯讀方式掛載
[root@svr7 ~]# systemctl restart httpd
[root@svr7 ~]# firefox 192.168.4.5/centos #驗證是否成功

四、部署無人值守安裝,生成應答檔案

1.裝包
system-config-kickstart 
2.設定yum源
[root@svr7 ~]# vim /etc/yum.repos.d/dvd.repo 
[development]
name=CentOS7.5
baseurl=ftp://192.168.4.5/centos
enabled=1
gpgcheck=0
3.開啟
system-config-kickstart #點選 "軟體包選擇(Package Selection)" 檢視是否可以進行選擇
4.圖形介面操作 (如下圖)

在這裡插入圖片描述
在這裡插入圖片描述

在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

在這裡插入圖片描述

儲存檔案到root下
在這裡插入圖片描述

[root@svr7 ~]# cp /root/ks.cfg /var/www/html/
[root@svr7 ~]# ls /var/www/html/
centos  ks.cfg
修改選單檔案指定應答檔案的位置:
[root@svr7 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default 
label linux
menu label  Install CentOS 7.5
menu default
kernel vmlinuz
append initrd=initrd.img ks=http://192.168.4.7/ks.cfg

五、總結

1.新建機器驗證

在這裡插入圖片描述

2.全部步驟

1.dhcp—>IP地址 next-server filename
2.tftp—>pxelinux.0
3.pxelinux.0—>選單檔案default
4.default—>圖形模組 背景圖片 核心 驅動程式 ks.cfg
5.ks.cfg—> …分割區 軟體包選擇
–url=「http://192.168.4.5/centos」


總結

本篇文章主要介紹了pxe無人值守安裝,希望對大家有所幫助!