今天呢,我们要实现通过网络来批量安装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

用上面的命令来安装一下我们的服务端软件,结果应该如下图

clip_p_w_picpath002

现在我们来配置一下DHCP服务,客户机通过网卡启动的时候要用到IP吧,不然怎么通讯,是吧

dhcp配置文件是/etc/dhcp/dhcpd.conf,默认的是什么都没有,

clip_p_w_picpath006

所以我们先复制一份过来,直接覆盖

mv /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

然后y就覆盖了原文件

clip_p_w_picpath008

vi /etc/dhcp/dhcpd.conf编辑它

clip_p_w_picpath010

直接跳到最后,加我们的内容即可,内容参考如下

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”;

}

clip_p_w_picpath012

一般来说配置好之后可以用services dhcpd restart来启动服务,但如果不幸运出现下图,嘿,启动不了

clip_p_w_picpath014

那我们可以通过日志来看一下为什么启动不了,查看日志命令下图

clip_p_w_picpath016

看,直接就提示了106行和109行有问题

clip_p_w_picpath018

多了一个封号,没有结尾的}

clip_p_w_picpath020

加上后我们再启动服务就正常了,当然我上面写的文字是正确的!

service dhcpd restart

clip_p_w_picpath022

好了,DHCP告一段落,现在我们来配置一下tftp-server,我们用下面的命令来打开编辑一下tftp配置文件

vi /etc/xinetd.d/tftp

clip_p_w_picpath024

我规划的目录就是在根下/tftpboot,所以在server_Args那里我就写了/tftpboot,我还加了-u nobody,所有人可访问,并把disable=yes换成disable=no

 

看到下图是不是很奇怪,怎么配置完不是service tftp restart,而是service xinetd restart

其实tftp算是xinetd的子进程,所以我们启动主服务就OK

clip_p_w_picpath028

我们既然指定了/tftpboot,那我们就用下图中的命令来创建一下这个目录及子目录

mkdir –p /tftpboot/pxelinux.cfg

clip_p_w_picpath030

我们把引导的文件pxelinux.0先复制一份,我怕忘了…………

cp /usr/share/syslinux/pxelinux.0 /tftpboot

clip_p_w_picpath032

我们要把光盘中的p_w_picpaths下的镜像文件拷贝到/tftpboot中

cp –rp /mnt/p_w_picpaths/* /tftpboot

按几次y就行了

clip_p_w_picpath034

OK,现在我们把配置文件从光盘拷贝一份到我们的pxelinux.cfg中,给它来个新名字,default,命令如下

cp –rf /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default

clip_p_w_picpath036

好了,这就是我们改名好的default内容了

clip_p_w_picpath038

现在我们用下面的命令来启动安装器,生成我们的KS.CFG

system-config-kickstart

clip_p_w_picpath040

这大家都很熟悉了吧,语言、键盘布局、root密码

大家注意最下面我选的那两个,安装完成后自动重启和以字符界面安装,你不让它自动重启的话,它会停止在那个安装完成的界面,等你来按reboot,这可不行,最起码我不行,太懒

clip_p_w_picpath042

安装源的位置,我直接挂了ISO到pub中,这个在后面有写,输入FTP服务器的IP

clip_p_w_picpath044

这里清楚以前的分区信息,我们自己新建

clip_p_w_picpath046

这里大家可以设置网络信息,添加一个网卡eth0

clip_p_w_picpath048

这里就是防火墙了,默认什么状态

clip_p_w_picpath050

嘿,这张大家也很熟悉吧,你要安装什么包,在这里直接定义

clip_p_w_picpath052

完成后,我们保存一份ks.cfg,要放到能访问到的地址/var/ftp下面,这个地址在/etc/passwd里的ftp账号里改/ftp为/var/ftp就可以了,看自己情况

clip_p_w_picpath054

现在来启动我们的FTP

service vsftpd restart

clip_p_w_picpath056

我们用VIM打开/tftpboot/pxelinux.cfg/default,如下图,加上我们的KS地址

ks=ftp://192.168.3.1/ks.cfg

clip_p_w_picpath058

最后把我们的安装源准备好,我这是ISO直接给挂上了的

mount /dev/cdrom1 /var/ftp/pub

clip_p_w_picpath060

下面到客户机试试,如下图,伤不起啊,是不是出错了,不要紧,看下一张图

clip_p_w_picpath062

我们用cp命令来复制一份文件到tftpboot,再启动

cp –rf /mnt/isolinux/* /tftpboot

clip_p_w_picpath064

哇,好熟悉的界面啊

clip_p_w_picpath066

OK,当我们超时或按回车后,看,没有什么键盘语言神马的了,直接是获取地址

clip_p_w_picpath068

然后就可以获取安装文件

clip_p_w_picpath070

再然后就给我把盘格了

clip_p_w_picpath072

clip_p_w_picpath074

再然后就开始安装进程

clip_p_w_picpath076

我了个去,这么快开始安装了么,我这里是图形化安装,因为我实际操作中没在kickstart上选择字符界面安装

clip_p_w_picpath078

哈哈,就这么就成了,看下图就是安装完成的

clip_p_w_picpath080

clip_p_w_picpath082

好的,完美成功

 

 

来自:http://ucweb.blog.51cto.com/4042188/985215