今天呢,我们要实现通过网络来批量安装Linux,有点不同之处,是什么呢,批量是批量了,可我们还要实现批量不同版本的,也就是说啊,你按rhel 5,然后你装上去的就是rhel 5,你按rhel 6你装的就是6,这个是我们下次要实现的。
网络启动、网络安装这样的字眼出现的时候,一般都伴随着PXE这个家伙一起出现,PXE,一般来说我们的网卡上都有,也就是说,我们可以通过网卡来启动我们的计算机,这样呢,就可以实现我们从网络装系统了,更多PXE知识可以看百度百科
http://baike.baidu.com/view/1063934.htm
环境:
两台RHEL 6.3,一台做服务器,一台做客户机
适用场景:
企业部署或涉及到多台安装的时候,再或者电脑没有光驱等情况
我们先来配置一下服务端
安装必备的软件
yum install dhcp syslinux tftp* system-config-kickstart.noarch vsftpd –y
用上面的命令来安装一下我们的服务端软件,结果应该如下图
现在我们来配置一下DHCP服务,客户机通过网卡启动的时候要用到IP吧,不然怎么通讯,是吧
dhcp配置文件是/etc/dhcp/dhcpd.conf,默认的是什么都没有,
所以我们先复制一份过来,直接覆盖
mv /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
然后y就覆盖了原文件
vi /etc/dhcp/dhcpd.conf编辑它
直接跳到最后,加我们的内容即可,内容参考如下
Subnet是说我们分发网络地址是哪个段的,
Range是说我们分发的时候范围是多少
Option routers这是说我们的网关是多少
Next-server这里指的是tftp服务器地址
Filename就是我们的启动文件名了
subnet 192.168.3.0 netmask 255.255.255.0 {
range 192.168.3.1 192.168.3.6;
option routers 192.168.3.1;
option domain-name-servers 192.168.3.1;
next-server 192.168.3.1;
filename “pxelinux.0”;
}
一般来说配置好之后可以用services dhcpd restart来启动服务,但如果不幸运出现下图,嘿,启动不了
那我们可以通过日志来看一下为什么启动不了,查看日志命令下图
看,直接就提示了106行和109行有问题
多了一个封号,没有结尾的}
加上后我们再启动服务就正常了,当然我上面写的文字是正确的!
service dhcpd restart
好了,DHCP告一段落,现在我们来配置一下tftp-server,我们用下面的命令来打开编辑一下tftp配置文件
vi /etc/xinetd.d/tftp
我规划的目录就是在根下/tftpboot,所以在server_Args那里我就写了/tftpboot,我还加了-u nobody,所有人可访问,并把disable=yes换成disable=no
看到下图是不是很奇怪,怎么配置完不是service tftp restart,而是service xinetd restart
其实tftp算是xinetd的子进程,所以我们启动主服务就OK
我们既然指定了/tftpboot,那我们就用下图中的命令来创建一下这个目录及子目录
mkdir –p /tftpboot/pxelinux.cfg
我们把引导的文件pxelinux.0先复制一份,我怕忘了…………
cp /usr/share/syslinux/pxelinux.0 /tftpboot
我们要把光盘中的images下的镜像文件拷贝到/tftpboot中
cp –rp /mnt/images/* /tftpboot
按几次y就行了
OK,现在我们把配置文件从光盘拷贝一份到我们的pxelinux.cfg中,给它来个新名字,default,命令如下
cp –rf /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
好了,这就是我们改名好的default内容了
现在我们用下面的命令来启动安装器,生成我们的KS.CFG
system-config-kickstart
这大家都很熟悉了吧,语言、键盘布局、root密码
大家注意最下面我选的那两个,安装完成后自动重启和以字符界面安装,你不让它自动重启的话,它会停止在那个安装完成的界面,等你来按reboot,这可不行,最起码我不行,太懒
安装源的位置,我直接挂了ISO到pub中,这个在后面有写,输入FTP服务器的IP
这里清楚以前的分区信息,我们自己新建
这里大家可以设置网络信息,添加一个网卡eth0
这里就是防火墙了,默认什么状态
嘿,这张大家也很熟悉吧,你要安装什么包,在这里直接定义
完成后,我们保存一份ks.cfg,要放到能访问到的地址/var/ftp下面,这个地址在/etc/passwd里的ftp账号里改/ftp为/var/ftp就可以了,看自己情况
现在来启动我们的FTP
service vsftpd restart
我们用VIM打开/tftpboot/pxelinux.cfg/default,如下图,加上我们的KS地址
ks=ftp://192.168.3.1/ks.cfg
最后把我们的安装源准备好,我这是ISO直接给挂上了的
mount /dev/cdrom1 /var/ftp/pub
下面到客户机试试,如下图,伤不起啊,是不是出错了,不要紧,看下一张图
我们用cp命令来复制一份文件到tftpboot,再启动
cp –rf /mnt/isolinux/* /tftpboot
哇,好熟悉的界面啊
OK,当我们超时或按回车后,看,没有什么键盘语言神马的了,直接是获取地址
然后就可以获取安装文件
再然后就给我把盘格了
再然后就开始安装进程
我了个去,这么快开始安装了么,我这里是图形化安装,因为我实际操作中没在kickstart上选择字符界面安装
哈哈,就这么就成了,看下图就是安装完成的
好的,完美成功
来自:http://ucweb.blog.51cto.com/4042188/985215