环境:两台主机或虚拟机一台主机A做服务器Server,另一台主机B做客户端client。而且两台主机必须在同一网段,如vmware的虚拟vmnet4。
主机A要求安装dhcp程序、tftp程序以及tftp-server程序,syslinux程序(需要syslinux程序的/usr/share/syslinux/pxelinux.0)httpd程序提供web服务.
主机B可以作为一个新机子。
主机A要启动dhcp程序,service dhcpd start 开启成功,此时还要修改/etc/dhcp/dhcpd.conf下的配置文件信息,其中可以忽略#掉的信息,主要修改
里面的数字是范例,记得每段要用;分割开来。这里别忘记设置next-server,它指定的是tftp服务器的ip地址,我们这里把主机A同时开启dhcp服务和tftp服务了。
这里还有设置一个类似于bootloader的数据文件叫pxelinux.0.它位于你提前安装syslinux生成的/usr/share/syslinux/目录下叫pxelinux.0。
想要dhcp开机就启动的话,还要使用命令Chkconfig dhcpd on,这样让我们看看使用chkconfig �Clist dhcpd 是否开启了dhcpd服务了。
这样做就是确保主机A的dhcp服务处于监听状态。
主机A还要启动tftp程序,启动tftp的方式有两种,一种是chkconfig tftp on,另一种是改变/etc/xinetd.d/tftp中有个disabled=yes改成no。
但是由于tftp需要xinetd超过守护进程开启(在yum 安装tftp时就已经解决了依赖关系了)。Service xinetd restart .在你tftp服务器上上传和下载的程序都位于/var/lib/tftpboot目录下。这里不再做实验演示,你可以自行touch文件,从另一台连接于同一网段的主机C上使用tftp172.16.249.148(举例子)获取成功可以使用get命令下载文件。并确保主机A的67,69,80端口处于监听。
其实这里,pxelinux.0有点类似于bootloader,它会去读取原pxeboot下面的vmlinuz和initrd.img,把它们加载到内存中展开,此时,它的作用就完成了。而vmlinuz会读取Packages中的anaconda程序,anaconda启动一个系统安装的程序。
下面让我们来使用复制命令
1、Cp /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.c32,splash.jpg} /var/lib/tftpboot/
Vesamenu.c32提供图形安装界面,其实它是由isolinux.cfg提供出来的。
Splash.jpg仅是一个开机安装的图片而已。
6 cp /media/cdrom/isolinux/isolinux.cfg/var/lib/tftpboot/pxelinux.cfg/default
复制并重命名为default
此时初步算是完成了。
既然是pxe网卡安装,就最好要使用到kickstart文件。回到你的主机A上,确保yum源完整,下载一个叫做system-config-kickstart的程序,另外你的物理机上最好装有xmanager工具。Yum installsystem-config-kickstart…….安装完成。
使用命令system-config-kickstart。弹出粉红色的X标志,通过读取root用户家目录下的anaconda.cfg的kickstart文件为蓝本进行修改,另外另存于一个你记得住的目录下。最后我们启动服务叫做httpd,基于tcp的80端口的服务,Service httpd restart or start,开启后,ss �Ctulp确保80端口出于监听状态。
如果想在本机web服务上建立一个可靠的packages源的话,别忘记利用手中的资源。
最后
先在/var/www/html下建立一个目录,我们暂且命名为c6
# pwd
# /var/www/html/c6
把我们现有的系统光盘先要umount掉。重新挂载到/var/www/html/c6下。再把我们之前做好的kickstart文件复制到该目录下,暂且命名为ct6.cfg。
好了,我们可以重启网络选项,让另一台新鲜的主机连到同一网段,这样等待它进入dhcp读取,看现在就已经自动安装了。
最后就是installation界面了