天天看點

KickStart安裝Linux(進階版)

文章原名: Kickstart無人值守安裝linux系統

怎麼說也是 進階版,當然要有進階的價值   添加了部分注釋  點選跳轉

首先準備一台PC(也可以用vmware虛拟機),用于安裝好linux,httpd、tftp-server、dhcp,Kickstart。另外再找一個帶pxe網卡的pc(或者使用一個vmware虛拟機)用于自動化安裝linux。

1、 我們要安裝rhel 5.4系統,準備好DVD安裝盤,這個pxe伺服器ip為192.168.0.3,子網路遮罩為255.255.255.0,以下操作均在這個機器上。

KickStart安裝Linux(進階版)

2、 軟體的安裝可以使用rpm工具,不過要自行解決依賴關系,也可以使用yum工具,不過我們要使用yum工具,必須先建立一個yum源,這裡我們建立一個yum本地源。

首先準備一個至少有3GB大小的分區,我們用于存放rhelCD光牒的内容。

這裡我找了一個/opt分區,把安裝盤的檔案拷貝到/opt/www目錄,挂載DVDCD光牒後執行以下指令:

cp –rp /media/RHEL_5.4 i386 DVD/Server/* /opt/www/

編輯/etc/yum.repos.d/ rhel-debuginfo.repo檔案,增加下面的内容即可

  1. [Server]  
  2. name=Server  
  3. baseurl=file:///opt/www/Server  //存放Server軟體的目錄,根據自己的情況修改  
  4. enabled=1  
  5. gpgcheck=1  

這樣本地yum就建立好了,可以使用yum工具了,以下軟體我們嘗試了這兩種安裝工具,可以在安裝時體會下他們的差別。

3、 安裝httpd

執行以下指令安裝

yum install httpd

配置/etc/httpd/conf/httpd.conf檔案,找到DocumentRoot選項,修改為/opt/www

KickStart安裝Linux(進階版)

然後重新開機httpd

service httpd restart

4、 安裝tftp-server

進入/opt/www/Server目錄,ls一下就可以看到我們要安裝的tftp-server了,然後安裝下就可以了

KickStart安裝Linux(進階版)

安裝後會在/etc/xinetd.d目錄下生成tftp檔案

KickStart安裝Linux(進階版)

預設tftp是不會啟動的,我們需要修改tftp檔案,disable = yes改成no

KickStart安裝Linux(進階版)

然後重新開機xinetd服務,使tftp服務啟動

KickStart安裝Linux(進階版)

lsof –i :69看下,tftp服務已經起來了

KickStart安裝Linux(進階版)

5、 進入tftpboot檔案夾,沒有就建立一個

cd /tftpboot/

把pxelinux.0複制到/tftpboot中;

cp /usr/lib/syslinux/pxelinux.0 /tftpboot/

把/opt/www/p_w_picpaths/pxeboot/initrd.img和 vmlinux兩個檔案複制到/tftpboot中;

KickStart安裝Linux(進階版)

cp initrd.img vmlinuz /tftpboot/

複制/opt/www/isolinux/*.msg到/tftpboot/中;

在tftpboot中建立一個pxelinux.cfg目錄,把/opt/www/isolinux目錄中的isolinux.cfg複制到pxelinux.cfg目錄中,并改名為default,然後修改default檔案,修改如下:

  1. default linux  
  2. prompt 1  
  3. timeout 6  //逾時時間,預設600,等得太久了,我們改小  
  4. display boot.msg  
  5. F1 boot.msg  
  6. F2 options.msg  
  7. F3 general.msg  
  8. F4 param.msg  
  9. F5 rescue.msg  
  10. label linux  
  11. kernel vmlinuz  
  12. append initrd=initrd.img ks=http://192.168.0.3/ks.cfg  

 //ks.cfg是kickstart安裝配置檔案,系統就是按照ks.cfg來安裝的。我們将在後面配置他

。。。。。。。以下略。。。。

以上操作後/tftpboot/下的檔案清單為:

KickStart安裝Linux(進階版)

6、 安裝dhcp

KickStart安裝Linux(進階版)

拷貝dhcp配置檔案到/etc下,如果有的話就覆寫

KickStart安裝Linux(進階版)

配置dhcpd.conf檔案

  1. ddns-update-style interim;   
  2. ignore client-updates;  
  3. next-server 192.168.0.3; //伺服器IP位址。   
  4. filename "/pxelinux.0"; //PXE得到IP以後的引導檔案   
  5. subnet 192.168.0.0 netmask 255.255.255.0 { //所屬網段及掩碼。   
  6. # --- default gateway   
  7. option routers 192.168.0.254; //路由器IP,可以寫網關IP   
  8. option subnet-mask 255.255.255.0;   
  9. # option nis-domain "domain.org";    //登出   
  10. # option domain-name "domain.org";   //登出   
  11. option domain-name-servers 192.168.0.254; //DNS伺服器IP   
  12. option time-offset -18000; # Eastern Standard Time   
  13. # option netbios-node-type 2;   
  14. range dynamic-bootp 192.168.0.129 192.168.0.253; //IP位址池範圍。   
  15. default-lease-time 21600;   

......後面省略 //寫配置檔案的時候注意每句後面的分号(;)不要丢了。

KickStart安裝Linux(進階版)

啟動dhcp服務

KickStart安裝Linux(進階版)

看看dhcp啟動了嗎

KickStart安裝Linux(進階版)

7、 安裝kickstart

使用rpm工具安裝kickstart時會提示先安裝pykickstart,那我們就先安裝pykickstart,然後再安裝kickstart

KickStart安裝Linux(進階版)

如果使用yum工具時,會自動找到kickstart依賴的軟體,并安裝。

KickStart安裝Linux(進階版)

8、 生成ks.cfg檔案,圖形化界面配置(終端中運作system-config-kickstart指令)

KickStart安裝Linux(進階版)
KickStart安裝Linux(進階版)
KickStart安裝Linux(進階版)
KickStart安裝Linux(進階版)
KickStart安裝Linux(進階版)
KickStart安裝Linux(進階版)

在這裡選擇需要安裝的軟體包

KickStart安裝Linux(進階版)

點選“File”→“Save File”,儲存ks.cfg檔案,将它拷貝到/opt/www下。

KickStart安裝Linux(進階版)

打開ks.cfg檔案,加入

Key –skip //跳過注冊号輸入,這個很重要

KickStart安裝Linux(進階版)

9、 檢查下dhcp,httpd,tftp服務是否正常啟動

在浏覽器裡敲入http://192.168.0.3/ks.cfg看是否可以打開這個檔案

10、 将新機器連入pxe伺服器所在的網絡,如果有多台新機器也沒有問題,隻要交換機口夠多,都插上,啟動電源就可以,我是用vmware虛拟機做的實驗,給電後就自動獲得ip,開始安裝了。

11、 一會就自動完成了,出現以下對話框

KickStart安裝Linux(進階版)

重新開機後,這樣就安裝成功了。。

本文出自 “世外之寨” 部落格,請務必保留此出處http://yritech.blog.51cto.com/1504393/475353

附加注釋:

    總結一下容易出問題的地方.

第一、pxe,tftp傳輸問題。常見的是如下兩張圖檔。

KickStart安裝Linux(進階版)
KickStart安裝Linux(進階版)

可以看到IP位址已經有了,但tftp就是過不去。

問題原因:凡是pxe、tftp之類的,都是網絡傳輸問題。

能配置設定到IP位址,不一定就說是能ping的通。

解決方案:如果覺得自己哪裡都沒問題,看一下iptables,關掉。

          看一下路由、網關。route -n 看一下。即便IP是在同網段,路由不對也不行。

隻要能出現下面一張圖檔,就說明pxe、tftp沒問題了。

KickStart安裝Linux(進階版)

然後是引導安裝系統,需要用到的就是/tftpboot裡面的引導檔案和ks.cfg檔案。

隻要這個頁面過去了,基本上就隻剩ks.cfg檔案了。比如哪句話不合适,或者哪個方面沒提到,導緻系統無法自動處理,隻能暫停自動模式,進入手動模式。

再一個就是檔案位置問題。比如說ks.cfg裡面寫的位置和實際位置不一樣,系統找不到相關檔案,讓手動輸入具體位置等等。說起來這都是ks.cfg配置檔案怎麼寫的問題。

如果說位置問題,需要留意的主要就2個方面。http的根目錄是/var/www/html/;tftp的根目錄是/tftpboot./dhcpd.conf裡面那句話:filename "pxelinux.0";   有的裡面寫成filename "/pxelinux.0";   都是不影響的。這就好比是在 / 目錄下通路/etc/目錄時,cd /etc/ 和 cd etc 是一樣的原理。

繼續閱讀