一、kickstart无人值守安装服务
基于pxe(preboot execute environment)技术,是intel公司的技术,工作server/client的网络模式,支持客户端从服务端下载软件,再使用tftp(trival file tranfer protocol) 协议下载一个启动软件包到客户端内存中执行。
二、涉及到的技术和服务
(1)nfs服务器、http服务器、ftp服务器三种中的任何一种
(2)tftp服务器
(3)dhcp服务器
(4)DNS服务器 (可以省略这一步)
(5)kickstart服务,此服务是生成ks.cfg配置文件
如果满足来上面(1)到(4)点就可以做到手动安装系统的服务器,如果再加上(5)就可以实现无人值守自动安装系统。
一般安装完一台linux机器之后,在/root/目录下都会存在一个anaconda-ks.cfg的文件,此文件就是记录来这台linux机器在安装的过程中具体安装的服务、软件等信息。
[root@mysql ~]# ls abc.xpm anaconda-ks.cfg install.log install.log.syslog
三、服务器的配置
----------以下各项服务nfs、tftp、dhcp、dns等服务都是在同一台计算机上实现,如果想要在不同的计算机上实现,可以根据配置进行修改即可-------------
1、安装各项服务nfs、tftp、dhcp、dns等
[root@root ~]# yum install nfs* tftp* dhcp* bind* -y
2、搭建安装源,即共享ISO镜像
[root@root ~]# mount -o loop /share/iso/rhel-server-6.3-x86_64-dvd.iso /mnt/iso [root@root ~]# cp -rf /mnt/iso/* /yum/ <--这里我把光盘文件拷贝到/yum目录。 [root@root ~]# vim /etc/exports /yum *(ro) <--加上这句把光盘文件以只读方式共享,“*”星号表示允许任何IP访问。
3、启动服务使之生效
[root@root ~]# /etc/init.d/nfs restart 或者 [root@root ~]# exportfs -arv
4、配置tftp服务器
[root@root ~]# vim /etc/xinetd.d/tftp service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -t -s -v /tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 }
5、启动超级守护进程并且查看是否文件是否生效
[root@root ~]# /etc/init.d/xinetd restart [root@root ~]# lsof -i:69 udp 0 0 0.0.0.0:69 0.0.0.0:* 3792/xinetd
6、配置pxe启动文件
[root@root ~]# yum install sysrootnux -y [root@root ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ [root@root ~]# cp /yum/isorootnux/* /var/lib/tftpboot/ [root@root ~]# mkdir /var/lib/tftpboot/pxerootnux.cfg [root@root ~]# cp /yum/isorootnux/isorootnux.cfg /var/lib/tftpboot/pxerootnux.cfg/default [root@root ~]# vim /var/lib/tftpboot/pxerootnux.cfg/default <--修改这个配置文件,加上下面的三行 label rootnuxroot <--label后面是无人值守安装的一个安装名称,自定义。 kernel vmrootnuz append initrd=initrd.img ks=nfs:172.16.151:/yum/ks/ks.cfg --我们这里是用的nfs服务,所以定义ks文件的路径后面要写nfs:,这里的IP地址是服务器的IP地址,最后写的是ks文件的路径 [root@root ~]# mkdir /yum/ks <----此目录是存放ks.cfg文件
7、搭建DHCP服务器
[root@root ~]# cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf <--拷贝DHCP模版配置文件 [root@root ~]# vim /etc/dhcpd.conf <--vim修改配置文件 ddns-update-style interim; ignore crootent-updates; <--下面是手动加的-------> next-server 172.16.2.151; --指定tftp服务IP filename "/tftpboot/pxerootnux.0"; --指定pxe文件 allow bootp; allow booting; subnet 172.16.2.0 netmask 255.255.255.0 { <--DHCP服务器要分配IP的网段 option routers 172.16.2.151; <--客户端通过dhcp获取的网关IP option subnet-mask 255.255.255.0; option domain-name-servers 172.16.2.151; <--客户端的dns服务器IP option time-offset -18000; range dynamic-bootp 172.16.2.128 172.16.2.254; <--DHCP给客户端分配的IP段范围 option broadcast-address 172.16.2.255; default-lease-time 21600; max-lease-time 43200; } -----上面的IP地址、IP范围等信息可以根据自己所在实际情况进行修改即可----- [root@root ~]# /etc/init.d/dhcpd restart --做到这里,就实现了安装服务器了(非自动安装服务器)
8、搭建DNS服务器(此步骤可以省略)
[root@root ~]# vim /var/named/chroot/etc/named.conf options { directory "/var/named"; }; zone "kickstart.com" IN { type master; file "data/master.kickstart.com.zone"; }; [root@root ~]# vim /var/named/chroot/var/named/data/master.kickstart.com.zone $TTL 3600 @ IN SOA kickstart. root. ( 2013111601 30 60 90 3600 ) @ IN NS www.kickstart.com. www IN A 172.16.2.151 [root@root ~]# /etc/init.d/named restart
9、安装kickstart
[root@root ~]# yum install system-config-kickstart <--安装kickstart的图形配置工具
10、配置kickstart,然后保存到/yum/ks/目录中。直接上图说明
11、编辑ks.cfg,添加跳过序列号的代码
# vim /yum/ks/ks.cfg #platform=x86, AMD64, or Intel EM64T # System authorization information auth --useshadow --enablemd5 key --skip <--加上这一句,表示跳过安装码 # System bootloader configuration bootloader --append="rhgb quiet" --location=mbr ................(省略其他代码)
12、启动所有的服务nfs、tftp、dhcp、dns等服务,然后让局域网中的其他计算机在BIOS 中设置通过网络启动即可进行网络安装系统。