本文借鉴王军老师的文章http://johnwang.blog.51cto.com/474770/127248
希望对linux初学者有帮助O(∩_∩)O
PXE(preboot execute environment)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持来自网络的操作系统的启动过程,其启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中并执行,由这个启动软件包完成终端基本软件设置,从而引导预先安装在服务器中的终端操作系统。PXE可以引导多种操作系统,如:Windows95/98/2000,linux等。
流程化实现原理:
支持PXE的电脑开机(预先打开网卡PXE功能,网络引导)---> DHCP给该电脑一个IP地址,并指明下一跳tftp文件服务器 ---> 电脑去tftp服务器上(/tftpboot/文件夹下面)下载到一个叫做 pxelinux.0的文件,并拿到pxelinux.cfg文件夹下的default配置文件 ---> 根据该配置文件加载内核等操作,同时该配置文件中可以指明ks.cfg文件的地址,这样实现全程无人化安装!
基本实现步骤:
一、DHCP服务器配置
1、安装DHCP的rpm包:
方法一:yum install dhcp (CentOS自动从网上下载)
方法二:cd /misc/cd/CentOS/ (自动挂载上CD)
rpm -ivh dhcp-3.05......rpm(rpm包安装)
2、updatedb
3、查看是否有了/usr/.../sample项: locate dhcpd.conf
4、将/usr/.../sample项拷贝到/etc/dhcpd.conf目录下:(覆盖原配置文件)
cp /usr/.../sample /etc/dhcpd.conf
5、配置新/etc/dhcpd.conf:
6、启动DHCP服务:service dhcpd start
二、TFTP服务器配置
1、安装TFTP的rpm包:
方法一:yum install tftp(CentOS自动从网上下载)
方法二:cd /misc/cd/CentOS/ (自动挂载上CD)
2、cd 到 /etc/xinetd.d 目录下
3、配置/etc/xinetd.d/tftp文件:vi tftp
4、将pxelinux.0文件、initrd.img文件、vmlinuz文件复制到/root目录下:
cp /usr/lib/syslinux/pxelinux.0 /tftpboot/
cp /misc/cd/images/pxeboot/initrd.img /tftpboot/
cp /misc/cd/images/pxeboot/vmlinuz /tftpboot/
5、在/tftpboot/下新建文件夹:mkdir pxelinux.cfg,并在里面touch一个default文件。
6、配置default文件:
7、重启TFTP服务:
service xinetd restart
三、KickStart一键安装配置
1、cd 到/root目录,拷贝一个anaconda-ks.cfg 为 ks.cfg
2、配置ks.cfg(kickstart配置)
加上initlabel 默认全部都同意 不进行询问
3、启动httpd服务,并把/etc/httpd/conf.d/目录下的Welcome页面删除。
4、把/misc/cd/* 全部拷贝到/var/www/html/目录下:
cp -r /misc/cd/* /var/www/html/
5、把/root/下的ks.cfg拷贝到/var/www/html/目录下
6、在浏览器中输入此Server服务器IP,检查http是否正常。
7、新建一虚拟机,查看是否能KickStart安装linux。只用一个虚拟网卡。
8、成功。