首页 > 代码库 > CentOS6.5--PXE网卡系统安装需要的环境

CentOS6.5--PXE网卡系统安装需要的环境

环境:两台主机或虚拟机一台主机A做服务器Server,另一台主机B做客户端client。而且两台主机必须在同一网段,如vmware的虚拟vmnet4。

    主机A要求安装dhcp程序、tftp程序以及tftp-server程序,syslinux程序(需要syslinux程序的/usr/share/syslinux/pxelinux.0httpd程序提供web服务.

wKiom1PZiLLQG4MqAACzVrUW6XE115.jpg

    主机B可以作为一个新机子。

    主机A要启动dhcp程序,service dhcpd start 开启成功,此时还要修改/etc/dhcp/dhcpd.conf下的配置文件信息,其中可以忽略#掉的信息,主要修改

wKiom1PZiWrA460cAAG5P9ENKXA320.jpg


    里面的数字是范例,记得每段要用;分割开来。这里别忘记设置next-server,它指定的是tftp服务器的ip地址,我们这里把主机A同时开启dhcp服务和tftp服务了。

    这里还有设置一个类似于bootloader的数据文件叫pxelinux.0.它位于你提前安装syslinux生成的/usr/share/syslinux/目录下叫pxelinux.0

    想要dhcp开机就启动的话,还要使用命令Chkconfig dhcpd on,这样让我们看看使用chkconfig –list dhcpd 是否开启了dhcpd服务了。

    这样做就是确保主机Adhcp服务处于监听状态。

    主机A还要启动tftp程序,启动tftp的方式有两种,一种是chkconfig tftp on,另一种是改变/etc/xinetd.d/tftp中有个disabled=yes改成no

wKioL1PZijqAnJOdAAHph3_yDaQ877.jpg

    但是由于tftp需要xinetd超过守护进程开启(在yum 安装tftp时就已经解决了依赖关系了)。Service xinetd restart .在你tftp服务器上上传和下载的程序都位于/var/lib/tftpboot目录下。这里不再做实验演示,你可以自行touch文件,从另一台连接于同一网段的主机C上使用tftp172.16.249.148(举例子)获取成功可以使用get命令下载文件。并确保主机A67,6980端口处于监听。

wKiom1PZicSDFVUEAADZqgBzHoM932.jpg

其实这里,pxelinux.0有点类似于bootloader,它会去读取原pxeboot下面的vmlinuzinitrd.img,把它们加载到内存中展开,此时,它的作用就完成了。而vmlinuz会读取Packages中的anaconda程序,anaconda启动一个系统安装的程序。

wKioL1PZixmxvHetAAF5-tgexpk310.jpg

 

 

下面让我们来使用复制命令

1Cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot目录下

2、在/var/lib/tftpboot目录下创建一个叫pxelinux.cfg目录。

3模拟制作一个pxe环境所需要的文件,此时我们的虚拟机上挂有cd光盘。

确保挂载成功。

4 cp /media/cdrom/images/pxeboot/{vmlinuz内核,initrd.img ramdisk}  /var/lib/tftpboot

5 cp /media/cdrom/isolinux/{vesamenu.c32splash.jpg} /var/lib/tftpboot/

Vesamenu.c32提供图形安装界面,其实它是由isolinux.cfg提供出来的。

Splash.jpg仅是一个开机安装的图片而已。

6 cp /media/cdrom/isolinux/isolinux.cfg/var/lib/tftpboot/pxelinux.cfg/default

复制并重命名为default

wKiom1PZijzzTuIxAAJZZsv9ZKA228.jpg

此时初步算是完成了。

既然是pxe网卡安装,就最好要使用到kickstart文件。回到你的主机A上,确保yum源完整,下载一个叫做system-config-kickstart的程序,另外你的物理机上最好装有xmanager工具。Yum installsystem-config-kickstart…….安装完成。

使用命令system-config-kickstart。弹出粉红色的X标志,通过读取root用户家目录下的anaconda.cfgkickstart文件为蓝本进行修改,另外另存于一个你记得住的目录下。最后我们启动服务叫做httpd,基于tcp80端口的服务,Service httpd restart or start,开启后,ss –tulp确保80端口出于监听状态。

如果想在本机web服务上建立一个可靠的packages源的话,别忘记利用手中的资源。

最后

先在/var/www/html下建立一个目录,我们暂且命名为c6

# pwd

# /var/www/html/c6

把我们现有的系统光盘先要umount掉。重新挂载到/var/www/html/c6下。再把我们之前做好的kickstart文件复制到该目录下,暂且命名为ct6.cfg

wKiom1PZiqrATY-eAAGZeRqr8nI421.jpg

好了,我们可以重启网络选项,让另一台新鲜的主机连到同一网段,这样等待它进入dhcp读取,看现在就已经自动安装了。

wKioL1PZi_rAIzHQAALPnniqcBA883.jpg

最后就是installation界面了

wKiom1PZivzAyZtaAAEdGWy-qAE544.jpg