網絡無人值守安裝linux----kickstart

centos 6.4+kickstart + httpd + tftp

1  安裝需要的軟件包:

yum -y install tftp*
yum -y install dhcp*
yum -y install httpd*
yum -y install system-config-kickstart
yum -y install syslinux


2  修改配置文件:

2.1 創建tftp文件夾:

mkdir -p /tftpboot

   2.2 將centos 6.4 x86_6的iso掛載到/mnt下:

mount -t iso9660 /dev/cdrom /mnt/

  2.3 複製光盤裏的文件:

cp /mnt/images/pxeboot/* /tftpboot

2.4 複製光盤裏的isolinux

cp /mnt/isolinux/*.* /tftpboot

2.5複製pxelinux.0

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

2.6創建文件夾:

mkdir -p /tftpboot/pxelinux.cfg

2.7 複製配置文件:

cp /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default


 2.8 複製dhcpd配置文件:

cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcpd/dhcpd.conf


2.9 複製所有的iso 文件到httpd的首頁目錄:

cp -rf /mnt/* /var/www/html/

3  修改tftp配置文件

3.1  修改tfpt 啓動文件項目

vim /etc/xinetd.d/tftp
-----------------------------------------------------------------------
# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{
socket_type             = dgram
protocol                = udp
wait                    = yes
user                    = root
server                  = /usr/sbin/in.tftpd
server_args             = -s /tftpboot                   ### 這裏改成tftp的文件存放路徑,此處爲/tftpboot/
disable                 = no                               ### 把yes 改成 no , 開啓tftp的啓動
per_source              = 11
cps                     = 100 2
flags                   = IPv4
}

        3.2    啓動tftp服務:

service xinetd restart

4   修改dhcpd配置文件:

            4.1   修改dhcpd.conf

vim /etc/dhcp/dhcpd.conf
--------------------------------------------------------------------------------------------------------------------------------------------------------------
ddns-update-style none;                                                                                               #改成none
ignore client-updates;
next-server 192.168.80.150;                                                                                           #dhcp服務器地址
filename "/pxelinux.0";                                                                                               # 手動添加這行 >否則不能啓動安裝
subnet 192.168.80.0 netmask 255.255.255.0 {
option routers                                 192.168.80.254;
option subnet-mask                             255.255.255.0;
option nis-domain                              "che100.org";
option domain-name                             "che100.org";
option domain-name-servers                      8.8.8.8;
option time-offset                             -18000;
range dynamic-bootp                            192.168.80.151 192.168.80.153;                        # 可分配地址空間
default-lease-time 21600;
max-lease-time 43200;
}

     4.2    重啓dhcpd服務:

service dhcpd restart

5    kickstart 配置ks.conf文件:

      5.1運行system-config-kickstart

system-config-kickstart

210327807.jpg

2設置dhcp的訪問地址

210340512.jpg


3  設置grub 內核部分:

210402349.jpg


4   定義分區方式:

210414725.jpg


5  添加自己的網絡設備

210427801.jpg


6

210456691.jpg


7防火牆和selinux的初始化選項,這裏全都是禁止使用:

210507513.jpg


8 圖形配置的禁用

210518587.jpg


9 軟件包的選擇:

210541390.jpg


10    預安裝腳本的添加處:

210550280.jpg


11安裝後需要執行腳本的添加:

210604260.jpg


12 保存ks.conf 到網站跟目錄。


配置完成 選擇界面     file   ---   save   --- 保存到httpd的主目錄。我的默認在/var/www/html/ 下名稱爲ks.cfg

210628702.jpg

注意:11步的時候需要添加如下的系統服務優化代碼:


for name in `chkconfig --list | grep 3:on | awk '{print $1}'`;do chkconfig --level 3 $name off;done
for name in crond network rsyslog sshd;do chkconfig --level 3 $name on;done
for name in `chkconfig --list | grep 5:on | awk '{print $1}'`;do chkconfig --level 5 $name off;done
for name in crond network rsyslog sshd;do chkconfig --level 5 $name on;done

配置完成選擇界面     file   ---   save   --- 保存到httpd的主目錄。我的默認在/var/www/html/ 下名稱爲ks.cfg

啓動幾項服務:

service httpd restart
service xinetd restart
service dhcpd restart

----------------------------------------------至此system-config-kickstart 配置完成--------------------------------------------------------------------

6    修改tftp 下的default

vim /tftpboot/pxelinux.cfg/default
-------------------------------------------------------------------------------------------------------------------------------------------------
default vesamenu.c32
#prompt 1
timeout 3
display boot.msg
menu background splash.jpg
menu title Welcome to CentOS 6.4!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color scrollbar 0 #ffffffff #00000000
label linux
menu label ^Install or upgrade an existing system
menu default
kernel vmlinuz
append initrd=initrd.img
append ks=http://192.168.80.150/ks.cfg initrd=initrd.img  biosdevname=0 ksdevice=eth0        ### 如果這行不存在要添加這行“192.168.80.150”是dhcp服務器地址,後面全都需要
label
menu label Install system with ^basic video driver
kernel vmlinuz
append initrd=initrd.img xdriver=vesa nomodeset
label rescue
menu label ^Rescue installed system
kernel vmlinuz
append initrd=initrd.img rescue
label local
menu label Boot from ^local drive
localboot 0xffff
label memtest86
menu label ^Memory test
kernel memtest
append -

--------------------------------------------- -至此 default 文件配置完成--------------------------------------------------------

訪問ks.cfg文件,看看是否可以訪問到ks.cfg文件的所有內容:

213814521.jpg

#######################服務端配置至此結束#############################


7客戶端測試部分:

     1   開始pxe 啓動尋找dhcp服務器

214118388.jpg

等待ks.conf 信息

214238224.jpg

自動分區

214336787.jpg

開始安裝

214510721.jpg

######################################至此客戶端測試完畢#######################################


排錯部分:

1   kickstart 安裝服務器網卡變成em1 的解決方法:

vim /tftpboot/pxelinux.cfg/default
append ks=http://192.168.80.150/ks.cfg initrd=initrd.img  biosdevname=0 ksdevice=eth0
解決辦法:
增加 biosdevname=0  網上很多文章說這個地方有沒有無所謂,虛擬機測試的時候確實沒有問題.但是到了真實環境和生產環境問題還是很大的 必須要有.誰也不想自己熟悉的eth0 變成 em1 吧!

2   kickstart 安裝系統需要手工選擇網卡的解決方法:

vim /tftpboot/pxelinux.cfg/default
append ks=http://192.168.80.150/ks.cfg initrd=initrd.img  biosdevname=0 ksdevice=eth0
解決辦法:
增加 ksdevice=eth0

-------------------至此 全章完------------------

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章