一、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 /share/iso/rhel-server-6.3-x86_64-dvd.iso /mnt/ -o loop
[root@root ~]# cp /mnt/* /yum/ -rf <--这里我把光盘文件拷贝到/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 --yes改为no,表示服务能用
per_source = 11
cps = 100 2
flags = IPv4
}
5、启动超级守护进程并且查看是否文件是否生效
[root@root ~]# /etc/init.d/xinetd restart
[root@root ~]# netstat -ntlup |grep 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/rootb/sysrootnux/pxerootnux.0 /tftpboot/
[root@root ~]# cp /yum/isorootnux/* /tftpboot/
[root@root ~]# mkdir /tftpboot/pxerootnux.cfg
[root@root ~]# cp /yum/isorootnux/isorootnux.cfg /tftpboot/pxerootnux.cfg/default
[root@root ~]# vim /tftpboot/pxerootnux.cfg/default <--修改这个配置文件,加上下面的三行
label rootnuxroot <--label后面是无人值守安装的一个安装名称,自定义。
kernel vmrootnuz
append initrd=initrd.img ks=nfs:172.16.57.1:/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.57.1; --指定tftp服务IP
filename "/tftpboot/pxerootnux.0"; --指定pxe文件
allow bootp;
allow booting;
subnet 172.16.57.0 netmask 255.255.255.0 { <--DHCP服务器要分配IP的网段
option routers 172.16.57.1; <--客户端通过dhcp获取的网关IP
option subnet-mask 255.255.255.0;
option domain-name-servers 172.16.57.1; <--客户端的dns服务器IP
option time-offset -18000;
range dynamic-bootp 172.16.57.50 172.16.57.100; <--DHCP给客户端分配的IP段范围
option broadcast-address 172.16.57.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 86400
@ IN SOA kickstart. root. (
2013111601
120
240
360
86400 )
IN NS www.kickstart.com.
$GENERATE 1-254 station$ IN A 172.16.57.$
[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 中设置通过网络启动即可进行网络安装系统。
相关文章:
Kickstart无人值守批量安装Linux系统:http://www.linuxdiyf.com/linux/2281.html
基于PXE,Kickstart实现通过网络自动安装CentOS6.5:http://www.linuxdiyf.com/linux/1694.html
Ubuntu部署Dnsmasq实现Kickstart自动安装操作系统:http://www.linuxdiyf.com/linux/10765.html