基於PXE自動化安裝linux系統

2021-09-29 14:48:36 字數 3671 閱讀 8285

可以通過光碟人工安裝幾十台linux系統,但是如果上百臺甚至更多呢?所以下面將進行通過網絡卡引導基於pxe的自動化安裝linux系統的實驗。

實驗前提:網絡卡功能需帶有dhcp和tftp客戶端功能

實驗原理:

(1)通過dhcp功能向dhcp伺服器獲取ip位址以及tftp伺服器位址和啟動的引導程式pxelinux.0(功能相當於grub)

(2)繼續向tftp伺服器獲取啟動時的必要檔案:選單頁面isolinux.cfg(在tftp路徑下的選單命名為default)和啟動核心vmlinuz以及initrd等

(3)在isolinux.cfg(default)中提前配置好的kickstart檔案位址(此處通過配置本地http獲取)

(4)kickstart中定義啟動時安裝軟體安裝包的yum源路徑此(處通過配置本地http獲取)

(5)依賴啟動安裝嚮導和yum源路徑即可自動安裝所選擇的作業系統版本

實驗步驟:

(1)yum -y install dhcp tftp-server httpd安裝所需要的服務,並設定為開機啟動systemctl enable --now httpd dhcpd tftp,但是提示報錯

原因:這是因為dhcp配置檔案/etc/dhcp/dhcpd.conf中的配置是空的,可以通過複製摸板進行修改即可

其中:range:表示dhcp的ip範圍

option routers:指定閘道器

next-server:指向tftp伺服器位址

filename:獲取tftp下的檔案

[root@route2/var/lib/tftpboot]$cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc/dhcp/dhcpd.conf 

cp: overwrite 『/etc/dhcp/dhcpd.conf』? y

[root@route2/var/lib/tftpboot]$vim /etc/dhcp/dhcpd.conf

option domain-name "thomas.org";

option domain-name-servers 114.114.114.114,8.8.8.8;

default-lease-time 10000;

max-lease-time 120000;

log-facility local7;

subnet 192.168.7.0 netmask 255.255.255.0

.

├── 6

│ ├── initrd.img

│ └── vmlinuz

├── 7

│ ├── initrd.img

│ └── vmlinuz

├── 8

│ ├── initrd.img

│ └── vmlinuz

├── ldlinux.c32

├── libcom32.c32

├── libutil.c32

├── menu.c32

├── pxelinux.0

└── pxelinux.cfg

└── default

pxelinxu.0:網絡卡引導驅動程式,也是第乙個需要執行的程式

6、7、8:三個目錄分別存放的是對應作業系統版本的啟動核心

pxelinux.cfg:這是乙個目錄

default:該檔案在pxelinux.cfg目錄下,相當於grub中stage2階段的配置檔案,分別建立對應6、7、8、三個版本的選單

menu.c32:啟動時的選單驅動程式,用來顯示default中定義的選單選項

ldlinux.c32 、libutil.c32、libcom32.c32:centos8啟動menu.c32前必須先載入的檔案,centos6和7啟動時則不需要這三個檔案

default menu.c32

timeout 600

menu title autuinstall

label linux centos 8 mini

menu label install centos ^8 mini

kernel 8/vmlinuz

label linux centos7 mini

menu label install centos ^7 mini

kernel 7/vmlinuz

label linux centos6 mini

menu label install centos ^6 mini

kernel 6/vmlinuz

label local

menu default

menu label boot from ^local driv

localboot 0xffff

(3)配置ks路徑:上述已經安裝好httpd服務,httpd的服務路徑為/var/www/html/,在此路徑下建立ksdir目錄,並將三個版本的ks啟動檔案放入

kickstart檔案中指定了安裝時的源,而yum源也是根據http方式配置的epel源。

利用system-config-kickstart配置ks檔案:

kickstart配置解釋:

(5)在此基於pxe的自動化安裝部署實驗已經完成,只要在電腦啟動時選擇網絡卡引導啟動即可,根據選單選項安裝所需的作業系統版本。

PXE自動化安裝系統

關閉防火牆 關閉selinux dhcp服務設定為靜態ip 安裝軟體包 http 充當yum源安裝包倉庫 tftp server 在它的工作目錄存在引導主機的工作檔案 dhcp 位址分配 syslinx 輔助檔案其中pxelinux.0引導系統,可以理解為grup的作用 system config ...

運維自動化之系統安裝(基於PXE)

三 yum安裝system config kickstart圖形化軟體製作 在這裡筆者用第二種 注意 裡為筆者注釋 配置dhcp伺服器 service dhcpd start 此時可以啟動dhcp服務了,注意dhcp伺服器的ip必須是靜態ip!配置tftp vim pxelinux.cfg defa...

Linux自動化之基於http的pxe安裝服務

大致的流程如下圖 pxe 記憶體要大,2g,記憶體不夠會導致啟動故障。配合tftp dhcp ftp http,僅主機模式。設定成開機啟動!網絡卡內建pxe晶元。1 禁止iptabels,selinux 安裝三個服務並開機啟動 關掉vmware的dhcp服務 準備httpd的yum源倉庫 掛載需要寫...