Linux基于PXE實現系統全自動無人值守安裝


前言

在生產環境中,我們時常會需要在多臺客戶端主機或服務器安裝操作系統,如果每一臺都去手動安裝,費時費力,顯然是不現實的。那么,如何高效的完成此類工作呢?文將講解如何實現Linux系統的全自動無人值守安裝。


提供PXE服務所需安裝包

dhcp:動態主機配置協議,給客戶端提供ip地址

tftp-server:tftp服務器端,提供系統安裝所需文件

xinetd:tftp服務超級守護進程,用于喚醒tftp服務

httpd:基于http服務提供安裝源

syslinux:提供pxelinux.0文件,此文件用于引導系統,相當于bootloader

安裝所需安裝包

1.jpg

dhcp服務配置

dhcp服務的配置文件默認是/etc/dhcp/dhcpd.conf,但此文件默認是沒任何配置的,此服務提供了一個參考文件/usr/share/doc/dhcp*/dhcpd.conf.sample,復制此文件覆蓋原配置文件,直接修改即可。

2.jpg

#option domain-name "scholar.com";             #分配dns域
#option domain-name-servers 172.16.10.10;      #分配dns地址

#default-lease-time 600;                       #默認租約時長
#max-lease-time 7200;                          #最大租約時長
#以上為dhcp全局配置,如果僅為實現PXE可默認
subnet 172.16.0.0 netmask 255.255.0.0 {        #提供dhcp服務的網段
  range 172.16.10.20 172.16.10.100;            #地址池
  option routers 172.16.0.1;                   #網關
  next-server 172.16.10.10;                    #tftp服務器地址
  filename "pxelinux.0"                        #PXE引導文件
}
#以下僅為介紹dhcp特殊配置,無需要可不配置
#host winxp {                                  #設置保留專用地址
#  hardware ethernet 00:0c:29:50:29:02;        #保留主機物理地址
#  fixed-address 172.16.100.2;                 #保留地址,非地址池內地址,優先分配
#}

dhcp服務配置完成,測試配置無語法錯誤后,啟動服務并設置開機自啟

3.jpg

dhcp工作在upd的67端口,啟動服務后,可查看67端口是否開啟

4.jpg

tftp服務配置

xinetd是tftp的超級守護進程,即tftp是xinetd的子服務,修改配置文件,確保tftp服務沒有被禁用。

[root@scholar ~]# vim /etc/xinetd.d/tftp

service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot
        disable                 = no   #確保此項為no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}

修改完配置文件,啟動xinetd進程并設置tftp服務開機自啟

4.1.jpg

tftp工作在udp的69端口,啟動服務后,可查看69端口是否開啟

4.2jpg.jpg

注意:請將防火請關閉或設置相關規則允許訪問69端口,不然將無法訪問tftp服務。

提供引導內核等文件

從掛載的光盤中復制PXE所需文件到tftp工作目錄下(默認為/var/lib/tftpboot)

5.jpg

提供PXE工作環境

復制pxelinux.0文件(由syslinux包提供,需提前安裝)到tftp工作目錄

6.jpg

提供安裝源

可提供安裝源的服務有很多,例如:http、ftp、nfs等,我們就基于http服務實現此操作。在http服務默認的工作目錄里創建一個專為安裝源所使用目錄,并將之與已掛載的光盤目錄綁定。

7.jpg

啟動http服務并設置開機自啟,http服務工作在tcp的80端口,啟動服務后,可查看80端口是否開啟

8.jpg

提供kickstart文件

kickstart文件可以自己創建(需安裝system-config-kickstart.noarch工具),也可以復制系統文件直接修改。這里我們就不演示創建過程了,直接復制文件修改(此文件為/root/anaconda-ks.cfg)

9.jpg

#修改或添加以下兩項,目標指向安裝源
url --url=http://172.16.10.10/RHEL6.6
repo --name="Redhat" --baseurl=http://172.16.10.10/RHEL6.6 --cost=100

為了啟動時能夠加載kickstart文件,還需要修改/var/lib/tftpboot/pxelinux.cfg/default文件,添加ks文件的位置。

[root@scholar ~]# vim /var/lib/tftpboot/pxelinux.cfg/default

label linux
  menu label ^Install or upgrade an existing system
  menu default
  kernel vmlinuz
  append initrd=initrd.img ks=http://172.16.10.10/ks.cfg     #指向ks文件

啟動測試

將待裝系統的主機設置為網卡啟動

10.jpg

開機開始引導

11.jpg

引導成功開始安裝各種包

12.jpg

安裝成功,查看IP地址

13.jpg

The end

好了,以上便是基于PXE實現系統全自動無人值守安裝的整個過程,如果在引導時出現無法下載kickstart文件的情況,請檢查網絡內有無dhcp沖突,或selinux是否關閉。僅為個人學習整理,如有錯漏,大神勿噴~~~

原創文章,作者:書生,如若轉載,請注明出處:http://www.www58058.com/2264

(1)
書生書生
上一篇 2015-04-01
下一篇 2015-04-01

相關推薦

  • linux系統基礎

    一、計算機的組成   一)計算機硬件主要分為五個部分:        1. 控制器(Control):是整個計算機的中樞神經,其功能是對程序規定的控制信息進行解釋,根據其要求進行控制,調度程序、數據、地址,協調計算機各部分工作及內存與外設的訪問等。    2.…

    Linux干貨 2016-09-12
  • 第二十天 centos7的lamp簡單實現

    博客作業:CentOS 7 lamp, vhost1: pma.stuX.com, phpMyAdmin, 同時提供https服務; vhost2: wp.stuX.com, wordpress vhost3: dz.stuX.com, Discuz 環境說明: DNS是:192.168.100.7 vhosts(Centos7):192.168.100.1…

    Linux干貨 2016-06-18
  • 馬哥教育網絡班22期+第4周課程練習 忍者亂太郎喻成

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。   cp -rp /etc/skel /home/tuser1   chmod -R 700 /home/tuser1 2、…

    Linux干貨 2016-10-09
  • 配置LAMP服務器網站架構

    配置LAMP服務器網站架構 LAMP指的Linux(操作系統)、ApacheHTTP 服務器,MySQL(有時也指MariaDB,數據庫軟件) 和PHP(有時也是指Perl或Python) 的第一個字母,一般用來建立web應用平臺。 結構拓撲 httpd服務器配置 安裝環境 yum install httpd -y 修改httpd配置 vim /etc/ht…

    2017-06-06
  • Linux基礎—權限、grep使用

    今天主要是幾個練習,內容如下: 1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其他用戶均沒有任何訪問權限 [root@localhost ~]# cp -R /etc/skel/ /home/tuser1/ [root@localhost …

    Linux干貨 2016-10-10
  • 用戶操作詳解(附圖)

                    關于用戶和組的基本操作命令     在linux的操作系統中,對于用戶以及組的配置是及其常用的和重要的,其中包括了對于用戶的添加,刪除以及修改用戶的…

    Linux干貨 2016-08-05

評論列表(5條)

  • stanley
    stanley 2015-04-01 21:36

    格式做了微調,可以對比參考下。文章有圖有文詳盡清晰,如果能加上qa過程和原理描述會更上一層樓

    • 書生
      書生 2015-04-01 21:45

      @stanleyqa是啥

    • stanley
      stanley 2015-04-01 21:53

      @書生測試

    • 書生
      書生 2015-04-01 22:00

      @stanley呃 最后測試安裝的時候 一直卡在找kickstart文件那 找了一大頓 最后發現是受路由的dhcp的影響 醉了…

    • stanley
      stanley 2015-04-02 09:49

      @書生是的,同網絡多個dhcp服務器對ks的影響非常大 ,有時間也可以嘗試下windows的安裝

欧美性久久久久