1. gzyueqian
      13352868059
      首頁 > 新聞中心 > > 正文

      基于網(wǎng)絡(luò)的Red Hat Linux無人值守安裝方法

      更新時(shí)間: 2008-04-30 14:16:48來源: 粵嵌教育瀏覽量:992

        1. 方案介紹

        這種方案需要首先設(shè)置一個(gè)啟動(dòng)服務(wù)器和一個(gè)安裝服務(wù)器(可以配置在同一臺(tái)物理機(jī)上),然后通過網(wǎng)絡(luò)啟動(dòng)存放在啟動(dòng)服務(wù)器上的安裝程序。安裝程序會(huì)自動(dòng)訪問存放在安裝服務(wù)器上的安裝配置文件和安裝介質(zhì)來完成安裝。

        涉及到的技術(shù)

        該方案主要應(yīng)用了三種技術(shù):

        1) 在PC上從網(wǎng)絡(luò)啟動(dòng)Red Hat Linux安裝程序的PXE協(xié)議

        2) Red Hat Linux安裝程序提供的網(wǎng)絡(luò)安裝功能(即指通過網(wǎng)絡(luò)訪問安裝介質(zhì))

        3) Red Hat Linux 安裝程序提供的無人值守安裝功能(Red Hat稱為kickstart)

        技術(shù)1)和2)在參考資料1和2里已有部分介紹。本文將重點(diǎn)描述參考資料中未涉及部分和無人值守安裝功能。

        軟硬件需求

        要按本文介紹的方法完成自動(dòng)化安裝,你需要如下軟硬件資源:

        一臺(tái)PC機(jī)器作為啟動(dòng)和安裝服務(wù)器(其它架構(gòu)機(jī)器也可以)

        一臺(tái)待安裝的PC機(jī)器,它的網(wǎng)卡必須帶有PXE支持

        一個(gè)建好的局域網(wǎng),上述兩臺(tái)機(jī)器已經(jīng)連接入同一子網(wǎng)

        待安裝的Red Hat Linux安裝介質(zhì)

        該方案的實(shí)現(xiàn)步驟

        1) 配置啟動(dòng)服務(wù)器

        2) 配置安裝服務(wù)器

        3) 從網(wǎng)絡(luò)啟動(dòng)機(jī)器以完成安裝

        步驟1)和2)只需做一次即可。對(duì)每一臺(tái)需安裝Red Hat Linux的機(jī)器,都需要在啟動(dòng)服務(wù)器和安裝服務(wù)器中部署相應(yīng)的數(shù)據(jù),并執(zhí)行一次步驟3)。

        下面將帶領(lǐng)您逐一執(zhí)行這些步驟。為了簡單,我將用示例來說明如何在一臺(tái)安裝了 Red Hat Enterprise Linux AS 3 Update 5 的 PC 機(jī)上設(shè)置啟動(dòng)服務(wù)器和安裝服務(wù)器,并在一臺(tái)PC上安裝 Red Hat Enterprise Linux AS 4 Update 2。

        2. 步驟1:配置啟動(dòng)服務(wù)器

        啟動(dòng)服務(wù)器的目的是幫助在待安裝機(jī)器上啟動(dòng)Red Hat Linux 安裝程序。啟動(dòng)服務(wù)器上需要搭建一個(gè)DHCP 服務(wù)器和一個(gè)TFTP 服務(wù)器。前者是為了給待安裝機(jī)器分配IP地址,后者則是提供了一個(gè)讓待安裝機(jī)器下載啟動(dòng)鏡像的途徑。

        配置DHCP 服務(wù)器

        1) 安裝DHCP服務(wù)器包(RPM包名:dhcpd)。

        2) 編輯DHCP服務(wù)器配置文件 /etc/dhcp.conf。這里是一個(gè)示例:

      option domain-name "mydomain";
                  ddns-update-style none;
                  max-lease-time 7200;
                  server-name "bootserver";
                  default-lease-time 600;
                  allow booting;
                  allow bootp;
                  subnet 192.168.138.0 netmask 255.255.255.0 {
                  range 192.168.138.1 192.168.138.254;
                  deny unknown-clients;
                  }
                  group pxe {
                  filename "pxelinux.0";
                  host testserver { hardware ethernet 00:0C:29:70:24:5B; fixed-address
                  192.168.138.30; }
                  }

        在這個(gè)例子中,定義的子網(wǎng)是 192.168.138.0/255.255.255.0。主機(jī)定義項(xiàng)testserver指出 IP 地址 192.168.138.30 將分配給以太網(wǎng)卡00:0C:29:70:24:5B(待安裝機(jī)器),文件 pxelinux.0(在 TFTP 服務(wù)器的根目錄中)將作為啟動(dòng)映像被網(wǎng)卡ROM里的PXE客戶端載入內(nèi)存并運(yùn)行。

        每增加一臺(tái)需安裝的機(jī)器,我們需在dhcpd.conf中增加一條host條目。

        3) 給啟動(dòng)服務(wù)器配置一個(gè)IP,這個(gè)IP必須在DHCP服務(wù)器定義的子網(wǎng)內(nèi)。

        這里我們使用192.168.138.1。關(guān)于如何為Red Hat Linux系統(tǒng)配置IP地址,請(qǐng)查閱參考資料3。

        4) 啟動(dòng)DHCP服務(wù)。

        [root@bsvr] #service dhcpd restart

        配置TFTP服務(wù)器

        1) 安裝TFTP服務(wù)器包(RPM包名:tftpd)。

        2) 編輯TFTP 服務(wù)器的配置文件 /etc/xinetd.d/tftp。配置文件如下:

      service tftp
                  {
                  socket_type     = dgram
                  protocol        = udp
                  wait            = yes
                  user            = root
                  server          = /usr/sbin/in.tftpd
                  server_args     = -s /tftpboot
                  disable         = no
                  }

        這里選定了/tftpboot為TFTP 服務(wù)器的根目錄位置。

        3) 將Linux安裝程序的內(nèi)核/根文件系統(tǒng)文件復(fù)制到 TFTP 服務(wù)器的根目錄。對(duì)于每一個(gè)要被安裝的Red Hat Linux版本,都需要執(zhí)行一次該操作。

        Red Hat Linux張安裝光盤/isolinux目錄下會(huì)包含Linux安裝程序的內(nèi)核/根文件系統(tǒng)文件。下面一段命令將這些文件復(fù)制到TFTP服務(wù)器的根目錄下,并按照版本重新命名。

        [root@bsvr]#mkdir /mnt/iso

        [root@bsvr]#mount -o loop,ro RHEL4-U2-i386-AS-disc1.iso /mnt/iso

        [root@bsvr]#cp /mnt/iso/isolinux/initrd.img /tftpboot

        [root@bsvr]#cp /mnt/iso/isolinux/vmlinuz /tftpboot

        [root@bsvr]#mv /tftpboot/initrd.img /tftpboot/initrd-rhel4u2-i386.img

        [root@bsvr]#mv /tftpboot/vmlinuz /tftpboot/vmlinuz-rhel4u2-i386

        4) 將啟動(dòng)鏡像文件pxelinux.0復(fù)制到TFTP服務(wù)器根目錄。

        啟動(dòng)鏡像pxelinux.0可以在syslinux安裝包里獲得。安裝好syslinux安裝包后,將pxelinux.0復(fù)制到TFTP服務(wù)器根目錄。

        [root@bsvr]#cp /usr/lib/syslinux/pxelinux.0 /tftpboot/

        5) 編輯pxelinux.0的配置文件,以使pxelinux可以正確載入Red Hat Linux安裝程序。對(duì)于每一個(gè)要被安裝的Red Hat Linux版本,都需要執(zhí)行一次該操作。

        啟動(dòng)鏡像pxelinux.0文件在執(zhí)行過程中,會(huì)讀取配置文件以確定它應(yīng)該載入什么Linux內(nèi)核文件來運(yùn)行。所有的配置文件都放在啟動(dòng)服務(wù)器的/tftpboot/pxelinux.cfg/目錄下。pxelinux.0根據(jù)一定的規(guī)則來搜索合適的配置文件名。舉例來說,對(duì)于前面為待安裝機(jī)器分配的IP地址192.168.138.30(十六進(jìn)制表示為C0A88A1E),pxelinux.0會(huì)按如下次序搜索配置文件:

        C0A88A1E > C0A88A1 > … > C0 > C > default

        就是說,如果C0A88A1E文件存在,它就是pxelinux.0將載入的配置文件。否則,繼續(xù)往下找。如果C0A88A1文件存在,它就是pxelinux.0將載入的配置文件。如果前面的以C開頭的文件都不存在,那么pxelinux.0將試圖從文件default中讀取配置。對(duì)于一臺(tái)需要支持很多安裝機(jī)器的安裝服務(wù)器來說,將配置寫在與IP地址對(duì)應(yīng)的文件里很不靈活。把所有配置都集中在default文件中是個(gè)不錯(cuò)的主意,可以減輕配置文件維護(hù)負(fù)擔(dān)。

        可以將能想到的Red Hat Linux版本的配置都寫在default文件里,以便同時(shí)支持多種Red Hat Linux版本,如下所示(對(duì)于具體某個(gè) Red Hat Linux版本,對(duì)應(yīng)的行該如何寫,可以參考它安裝盤里的配置文件 /isolinux/isolinux.cfg):

      DEFAULT rhel4u2-i386
                  DISPLAY pxelinux.cfg/list
                  PROMPT 1
                  LABEL rhel3u6-i386
                  KERNEL vmlinuz-rhel3u6-i386
                  APPEND initrd=initrd-rhel3u6-i386.img
                  LABEL rhel3u6-x86_64
                  KERNEL vmlinuz-rhel3u6-x86_64
                  APPEND initrd=initrd-rhel3u6-x86_64.img devfs=nomount ramdisk_size=9216
                  LABEL rhel4u2-i386
                  KERNEL vmlinuz-rhel4u2-i386
                  APPEND initrd=initrd-rhel4u2-i386.img ramdisk_size=8192

        這樣用戶可以通過輸入某種版本的LABEL(例如,rhel4u2-i386)來選擇具體的安裝版本。為了能在安裝時(shí)知道有哪些備選,可以讓pxelinux.0提示要戶選擇之前顯示一個(gè)列表。這通過在default里指定DISPLAY選項(xiàng)來實(shí)現(xiàn)。在上面的樣例中,我們將所有備選Red Hat Linux版本列在文件pxelinux.cfg/list中,它的內(nèi)容會(huì)被pxelinux.0顯示出來。

        在我們的例子中,/tftpboot/pxelinux.cfg/list文件內(nèi)容如下:

        Choose one of the following Linux distributions for your installation:

        Name Distribution Arch. Installation media

        -------------------------------------------------------------------------

        rhel3u6-i386 RHEL 3 AS U6 i386 192.168.138.1:/instsvr/i386/rhel3u6

        rhel3u6-x86_64 RHEL 3 AS U6 x86_64 192.168.138.1:/instsvr/x86_64/rhel3u6

        rhel4u2-i386 RHEL 4 AS U2 i386 192.168.138.1:/instsvr/i386/rhel4u2

        6) 啟動(dòng)TFTP服務(wù)。

        [root@bsvr]#service xinetd restart

        3. 步驟2:配置安裝服務(wù)器

        安裝服務(wù)器在安裝期間提供對(duì) Linux 安裝介質(zhì)和無人值守安裝配置文件的訪問。安裝介質(zhì)存儲(chǔ)在服務(wù)器上的一個(gè)目錄中,可以使用各種網(wǎng)絡(luò)協(xié)議訪問它,比如 HTTP,F(xiàn)TP,和NFS。使用NFS協(xié)議,Red Hat Linux安裝程序可以支持多種安裝介質(zhì)目錄結(jié)構(gòu),尤其是支持ISO光盤鏡像文件。這里我們選擇使用NFS協(xié)議來訪問安裝介質(zhì)。

        配置NFS服務(wù)器

        1) 準(zhǔn)備ISO安裝介質(zhì)。將Red Hat Linux安裝介質(zhì)的ISO文件都放置到/instsvr目錄下。注意不要改變文件名。

        [root@bsvr]#mkdir /instsvr

        [root@bsvr]#mv RHEL4-U2-i386-AS-disc1.iso /instsvr/i386/rhel4u2

        [root@bsvr]#mv RHEL4-U2-i386-AS-disc2.iso /instsvr/i386/rhel4u2

        [root@bsvr]#mv RHEL4-U2-i386-AS-disc3.iso /instsrv/i386/rhel4u2

        [root@bsvr]#mv RHEL4-U2-i386-AS-disc4.iso /instsrv/i386/rhel4u2

        2) 編輯NFS服務(wù)器配置文件 /etc/exports,以允許其它機(jī)器通過NFS訪問目錄/instsrv。/etc/exports 文件內(nèi)容如下:

        /instsvr *(ro,no_root_squash,sync)

        其中:

        * 表示任何IP地址都可以訪問該目錄。為了安全的考慮,也可以指定具體的IP地址。

        ro 表示遠(yuǎn)程機(jī)器對(duì)該目錄只有讀權(quán)限。

        其它選項(xiàng)請(qǐng)參考NFS手冊(cè)。

        3) 重新啟動(dòng)NFS服務(wù)以使新配置生效

        [root@bsvr]# service portmap restart; service nfs restart

        4) 檢測目錄/instsrv是否已被正確共享

        [root@bsvr]#showmount -e localhost
       
        Export list for localhost:

        /instsrv *

        這樣,我們就設(shè)置好了一個(gè)安裝服務(wù)器。很簡單吧!

        配置kickstart安裝

        自從 5.2 版開始, Red Hat Linux 開始支持一個(gè)稱為 kickstart 的功能,其主要目的是為了減少安裝過程中的人機(jī)交互,提高安裝效率。使用這種方法,只需事先定義好一個(gè)配置文件(通常存放在安裝服務(wù)器上),并讓安裝程序知道該配置文件的位置,在安裝過程中安裝程序就可以自己從該文件中讀取安裝配置,這樣就避免了繁瑣的人機(jī)交互,實(shí)現(xiàn)無人值守的自動(dòng)化安裝。

        要使用 kickstart ,你必須:

        1) 創(chuàng)建 kickstart 配置文件。

        2) 部署kickstart配置文件,即將kickstart配置文件放置到安裝服務(wù)器上,并在安裝程序的kernel參數(shù)中指定kickstart配置文件的位置。

        創(chuàng)建kickstart配置文件

        kickstart 配置文件是一個(gè)簡單的文本文件,包含一個(gè)安裝項(xiàng)目列表。每個(gè)項(xiàng)目對(duì)應(yīng)于一個(gè)安裝選擇,都用關(guān)鍵字標(biāo)明。
       
        有如下幾種方法生成kickstart配置文件:

        Red Hat提供了一個(gè)樣例文件。在Red Hat Linux 文檔光盤中 RH-DOCS 目錄里的 sample.ks 文件。你可以基于該樣例來創(chuàng)建你自己的配置kickstart文件。

        每當(dāng)你安裝好一臺(tái)Red Hat Linux機(jī)器,Red Hat Linux 安裝程序都會(huì)創(chuàng)建一個(gè) kickstart 配置文件,記錄你的真實(shí)安裝配置。如果你希望實(shí)現(xiàn)和某系統(tǒng)類似的安裝,可以基于該系統(tǒng)的kickstart配置文件來生成你自己的kickstart配置文件。

        Red Hat Linux提供了一個(gè)圖形化的kickstart配置工具。在任何一個(gè)安裝好的Red Hat Linux系統(tǒng)上運(yùn)行該工具,就可以很容易地創(chuàng)建你自己的kickstart配置文件。kickstart配置工具命令為redhat-config-kickstart(RHEL3)或system-config-kickstart(RHEL4)

        閱讀kickstart配置文件的手冊(cè)。用任何一個(gè)文本編輯器都可以創(chuàng)建你自己的kickstart配置文件。

        這里有一個(gè)kickstart配置文件樣例:

        注意:筆者在此處刪除了原文的kickstart樣例,因?yàn)椋煌?有不同的安裝需求,放一個(gè)樣例在這里實(shí)在沒有什么意思。

        對(duì)于kickstart文件,有一點(diǎn)值得我們注意,那就是 %post 以后代表完成系統(tǒng)安裝之后將要執(zhí)行的命令,我們可以在此配置系統(tǒng),比如調(diào)整內(nèi)核參數(shù),配置主機(jī)防火墻等等。

        所有以"#"號(hào)開頭的都是注釋。

       文件中的nfs --server=192.168.138.1 --dir=/instsvr/i386/rhel4u2選項(xiàng)告訴安裝程序:到服務(wù)器192.168.138.1的NFS共享目錄/instsvr/i386/rhel4u2下尋找安裝介質(zhì)。Red Hat Linux安裝程序足夠聰明,可以識(shí)別該目錄下應(yīng)該被讀取的ISO光盤鏡像文件名,所有這里你不需要指定ISO文件名。

         關(guān)于kickstart配置文件支持的所有選項(xiàng)及其相信說明,請(qǐng)查閱參考資料3。

        部署kickstart配置文件

        首先我們需要把kickstart配置文件放在安裝服務(wù)器上。我們把它放到/instsvr/ks目錄下。即該文件的NFS訪問路徑為:

        nfs:192.168.138.1:/instsvr/ks/ks.cfg

        其次,我們需要讓安裝程序知道我們希望它用kickstart方式安裝,并告知它可以從哪里獲得kickstart配置文件。這可以通過給內(nèi)核添加一個(gè)參數(shù)"ks=kickstart配置文件路徑"來實(shí)現(xiàn)。我們只需對(duì)啟動(dòng)服務(wù)器上的default文件做一些小修改就可以做到這點(diǎn):

        LABEL rhel4u2-i386

        KERNEL vmlinuz-rhel4u2-i386

        APPEND ks=nfs:192.168.138.1:/instsvr/ks/ks.cfg initrd=initrd-rhel4u2-i386.img
       
        ramdisk_size=8192

        這樣在啟動(dòng)安裝程序的時(shí)候,參數(shù)ks=nfs:192.168.138.1:/instsvr/ks/ks.cfg會(huì)被傳遞給它,告訴它使用這個(gè)文件作為kickstart配置文件來進(jìn)行kickstart安裝。

        5. 步驟3:從網(wǎng)絡(luò)啟動(dòng)機(jī)器以完成安裝

        前面的配置工作完成后,下面我們就在待安裝機(jī)器上通過網(wǎng)絡(luò)以無人值守的方式來安裝Red Hat Enterprise Linux AS 4 Update 2。

        啟動(dòng)待安裝機(jī)器,選擇從網(wǎng)卡啟動(dòng)。具體方法因BIOS版本不同而異。





      免費(fèi)預(yù)約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 亚欧日韩欧美网站在线看 | 日韩在线视频网站 | 亚洲国产午夜福利线播放 | 亚洲欧美成aⅴ人在线观看 精品在线视频一区 | 在线看欧美十八禁网站 | 性高朝久久久久久久 |