执行PXE+KICKSTART安装需要的设备为:
1、DHCP服务器
2、TFTP服务器
3、Kickstart所和成的ks.cfg配置文件
4、一台存放系统安装文件的服务器,如NFS.HTTP或FTP服务器。
5、一台带有PXE支持网卡的主机。
系统环境如下:服务器为Centos 6.6 x86_64,IP为:192.168.230.3。由于是最小化安装的,我们后面
要用到system-config-kichstart工具,
它必须依赖于X Windows,所以我们要行安装好X Windows及GNOME并重启系统。
安装X Windows及GNOME的步骤如下:
先安装X Windows及GNOME桌面环境,命令如下:
yum -y groupinstall 'X Window System' #yum -y groupinstall 'GNOME Desktop Environment'(6.0以前版本) yum groupinstall "Desktop" (6.0以后版本)
然后修改/etc/inittab文件并重启服务器,使其运行在图形模式下,主要修改的文件内容如下:
id:5:initdefault:
重启服务器命令如下:
reboot
上述完成后,就可以进行无人值守安装了
1)首先下载CENTOS 6.6 X86_64光盘ISO文件至/usr/local/src下,并挂载到/mnt/cdrom目录下
cd /usr/local/src
#wget http://光盘ISO镜像
mkdir -p /mnt/cdrom
接下来我们挂载光盘ISO文件至/mnt/cdrom目录下,命令如下:
mount -o loop ISO镜像名字 /mnt/cdrom
安装Apache服务并启动
yum -y httpd
/etc/init.d/httpd start
测试下Apache能访问不
http://192.168.230.3
2)接下来复制光盘ISO文件下的所有内容(文件和文件夹)到 /var/www/html
(此目录为Apache默认DocumentRoot目录)下,如果是最小化安装,基本上
第一张DVD光盘文件就足够了,复制命令如下:
cp -rf /mnt/cdrom/* /var/www/html
3)安装tftp-server,并启动tftp服务,同时启动xinetd进程,步骤如下:
a)安装tftp-server
yum -y install tftp-server
b)接着修改/etc/xinetd.d/tftp文件,将disable的值由yes变为no。(注意:还有个地方要改server_args = -s /tftpboot;后面文件都
放在这个里面)
c)接着重启xinetd进程,命令如下:
service xinetd restart
4)配置支持PXE的启动程序(注意:前面已将CENTOS 6.6第一张光盘内容拷到了/var/www/html目录中了,所以只要从
/var/www/html目录中复制需要的文件就行)
a)建立tftpboot文件夹,命令如下
mkdkir -p /tftpboot
b)安装syslinux包
yum -y install syslinux
c)复制pxelinux.0文件至tftpboot文件夹中,命令如下
cp /usr/share/syslinux/pxelinux.0 /tftpboot
d)把DVD光盘上的/image/pxeboot/initrd.img和vmlinuz复制到/tftpboot/中,命令如下:
cp /var/www/html/images/pxeboot/initrd.img /tftpboot
cp /var/www/html/images/pxeboot/vmlinuz /tftpboot
e)复制DVD光盘上的isolinux/*.msg 到/tftpboot目录下,命令如下:
cp /var/www/html/isolinux/*.msg /tftpboot
f)复制vesamenu.c32到/tftpboot目录下
cp /var/www/html/isolinux/vesamenu.c32 /tftpboot/
g)在tftpboot中新建一个pxelinux.cfg目录
mkdir pxelinux.cfg
h) 将isolinux目录中的isolinux.cfg复制到pxelinux.cfg目录中,同时更改文件名称为default
cd pxelinux.cfg
cp /var/www/html/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
i)在上一个步骤中,暂时不要修改 default文件,进行到这一步时,虽然已经可以通过网络来引导并手动安装Kickstart了,但是
这时讨论的是无人值守安装,所以行不修改这个default文件
5)安装DHCP服务,同时修改如下配置
yum -y install dhcp
然后复制配置模板文件到指定的目录中,并重命名
cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
接着修改/etc/dhcpd.conf配置文件,文件最后修改内容如下所示:
ubnet 192.168.230.0 netmask 255.255.255.0 { #提供dhcp服务的网段;
range 192.168.230.100 192.168.230.200; #地址池;
option domain-name “internal.example.org”; #分配dns域;
option routers 192.168.230.2; #网关;
next-server 192.168.230.3; #tftp服务器地址;
filename “/pxelinux.0”; #PXE引导文件;
default-lease-time 600; #默认租约时长;
max-lease-time 7200; #最大租约时长;
option domain-name-servers 202.103.24.68; #分配dns地址;
}
测试配置dhcp语法是否有误;
service dhcpd configtest
启动dhcp服务;
service dhcpd start
chkconfig –add dhcpd
6)用yum安装Kichstart, 同时配置system-config-kickstart.
a)安装Kichstart工具包
yum -y install system-config-kickstart
b)在GNOME环境下配置Kickstart,命令如下:
system-config-kickstart
运行上面命令后可以对系统的一些基本配置进行设置,例如选择时区、设置ROOT密码等。
c)接下来进行安装了,选择httpd安装,切记不要输入任何帐号,而是采用匿名安装。
在安装过程中,根据引导选择安装选项,不需要做更改。
d)kickstart 会让我们选择批量安装的分区信息,我们创建三个分区,即/boot , swap, /
e)进行网络配置时,使用动态分配地址
f)设置显示配置时可以按照我们的习惯进行。
g)大家可以根据实际的工作需求来选择自己需要的软件包,建议大家选择最小化安装
h)其它都选择默认设置,不需要修改
i)最后将生成的文件ks.cfg保存到/var/www/html下。ks.cfg文件的配置方法为自动化无人值守安装的重点和难点,此文件稍
有配置不当就需要人为干预。
7)修改/tftpboot/pxelinux.cfg/default文件,指定读取ks.cfg的方法,修改如下:
label linux
menu label ^Install or upgrade an existing system
menu default
kernel vmlinuz
append initrd=initrd.img ks=http://192.168.230.3/ks.cfg #指定ks文件;(修改这个地方)