公司購買了一批HP DL360G5服務器,數量大約有200臺。要統一安裝 RedHat Enterprise Linux AS 4 update 7 操做系統。若是一臺一臺手動安裝不但費時費事,更是會讓我羸弱的身體雪上加霜。因而公欲善其事,必先利其器。我決定使用PXE來批量安裝這批服務器。
如下是安裝配置的過程:
硬件和軟件環境:
硬件:找一臺安裝了RedHat Enterprise Linux AS 4 update 7 系統的服務器,一臺48口千兆交換機(沒有千兆交互機能夠用百兆交換機替代)
軟件:tftp-server、dhcpd、vsftpd
軟件安裝配置過程:
一、安裝tftp-server
從 RedHat Enterprise Linux AS 4 update 7 安裝光盤找到 tftp-server-0.39-3.el4.i386.rpm 軟件包並安裝。
修改 /etc/xinetd.d/tftp 文件:html
# 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 disable = no #將原來的yes改爲no per_source = 11 cps = 100 2 flags = IPv4 } |
重啓 xinetd 服務linux
#service xinetd restart。
配置tftpboot目錄內的文件
複製 RedHat Enterprise Linux AS 4 update 7 安裝光盤中 /p_w_picpaths/pxeboot/ 目錄下的initrd.img和vmlinuz到/tftpboot目錄下。
從 http://www.kernel.org/pub/linux/utils/boot/syslinux/ 下載最新版的 syslinux。我下載的是syslinux-3.84.zip。
解壓syslinux-3.84.zip
複製其中的com32/menu/vesamenu.c32 到 /tftpboot 目錄下。
複製其中的core/pxelinux.0 到 /tftpboot 目錄下。
複製其中com32/hdt/art/backgnd.png 到 /tftpboot 目錄下。
在 /tftpboot 目錄下新建一個目錄pxelinux.cfg
在 /tftpboot/pxelinux.cfg 目錄下創建default文件,內容以下:express
default vesamenu.c32 prompt 0 menu TITLE PXE Boot Install Menu By WOSZM MENU BACKGROUND backgnd.png timeout 100 label linux4u7 MENU LABEL ^0----Install RedHat AS4 update 7 kernel vmlinuz append ks=ftp://192.168.0.1/ks.cfg ksdevice=eth0 initrd=initrd.img ramdisk_size=8192 |
/tftpboot 目錄下的內容以下:
-rw-r--r-- 1 root root 10155 Feb 5 10:53 backgnd.png
-rw-r--r-- 1 root root 4266944 Feb 1 10:05 initrd.img
-rwxr-xr-x 1 root root 16466 Feb 1 10:04 pxelinux.0
-drwxr-xr-x 2 root root 4096 Feb 5 11:31 pxelinux.cfg
.----------rwxr-xr-x 1 root root 103 Feb 5 11:31 default
-rwxr-xr-x 1 root root 158364 Feb 5 10:48 vesamenu.c32
-rw-r--r-- 1 root root 1545551 Feb 1 10:05 vmlinuz服務器
二、安裝vsftpd
從 RedHat Enterprise Linux AS 4 update 7 安裝光盤找到 vsftpd-2.0.1-6.el4.i386.rpm 軟件包並安裝。
vsftpd默認支持匿名下載,無需修改配置,只要啓動 vsftpd 服務#service vsftpd start。
創建 RedHat Enterprise Linux AS 4 update 7 安裝樹。
#mount -o loop RHEL4.7-i386-AS-DVD.iso /mnt
#cp -avr /mnt /var/ftp/rhelapp
三、安裝dhcpd
從 RedHat Enterprise Linux AS 4 update 7 安裝光盤找到 dhcp-3.0.1-62.EL4.i386.rpm 軟件包並安裝。
修改 ll /etc/dhcpd.conf 文件:less
# # DHCP Server Configuration file. # see /usr/share/doc/dhcp*/dhcpd.conf.sample # ddns-update-style interim; ignore client-updates; allow booting; allow bootp; subnet 192.168.0.0 netmask 255.255.255.0 { option routers 192.168.0.1; option subnet-mask 255.255.255.0; #option domain-name-servers 192.168.0.1; option time-offset -18000; range dynamic-bootp 192.168.0.100 192.168.0.254; default-lease-time 21600; max-lease-time 43200; next-server 192.168.0.1; filename "/pxelinux.0"; } |
用以上的內容替換原來的文件內容。
修改服務器網卡eth0的配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0:dom
DEVICE=eth0 BOOTPROTO=static TYPE=Ethernet ONBOOT=yes IPADDR=192.168.0.1 NETMASK=255.255.255.0 |
修改dhcp啓動網卡的配置文件 /etc/sysconfig/dhcpdsocket
# Command line options here DHCPDARGS=eth0 |
啓動網卡#ifup eth0
啓動dhcp服務#service dhcpd starttcp
四、配置ks.cfgide
按照下面的內容或者安裝你須要的內容配置ks.cfg文件,並將文件複製大/var/ftp目錄下。
# Kickstart file automatically generated by anaconda. |
關於ks.cfg的其餘具體參數請參考:https://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/Installation_Guide-en-US/s1-kickstart2-options.html
剩下的事情就是端杯茶,慢慢品嚐了。