首页 > 代码库 > 搭建pxe环境安装系统
搭建pxe环境安装系统
简介
安装系统,听起来是很简单的事情,哪怕是完全没有基础,在网卡搜索一篇安装教程,一步一步照着做,也可以把系统安装好。当然,很多时候简单的事,一旦数量多了之后,就会发现变得很难处理。只为一台电脑安装系统容易,如果是一百台呢,一千台呢?如果有一天,老板要求你把公司所有的电脑升级一下系统,难道还要拿着光盘或者U盘一台一台去安装吗?PXE的安装环境,就是为了解决这样的问题出来的。
PXE(preboot execute environment)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持来自网络的操作系统的启动过程,其启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中并执行,可以直接就是内核,再由内核去找到网络共享出来的yum源,加载安装程序anaconda来安装程序,如果再配合安装自动应答文件Kickstart的话,就可以实现全自动安装了。听起来是不是很有意思,下面就来细细说明pxe全自动安装环境的配置。
架构和流程
PXE自动部署操作系统启动过程如下:
a) 客户端计算机启动,由于BIOS设置了网卡启动,所以网卡PXE ROM中的程序被调入内存执行。
b) 客户端在网络中寻找DHCP服务器,然后请求一个IP地址;
c) DHCP服务器为客户端提供IP地址和其他网络参数。
d) DHCP服务器联系到TFTP服务器为此客户端发送一个bootstrap(引导程序)。
e) 客户端收到bootstrap(引导文件pxelinux.0)后执行,bootstrap会请求TFTP传送bootstrap的配置文件(pxelinux.cfg/default);收到后读配置文件,根据该配置文件内容和客户情况,客户端请求TFTP传送内核映像文件(vmlinuz)和根文件系统文件(initrd.img)。
f) 启动内核。
g) 内核根据bootstrap的配置文件,通过网络获取操作系统自动安装脚本,并通过网络服务(nfs/ftp/web)获得系统所需安装文件,按照自动安装脚本的配置进行安装。
DHCP服务器的配置
一、首先要先安装好dhcp
yum install dhcp
二、然后要设置好dhcp服务的配置文件(/etc/dhcp/dhcpd.conf)
vim /etc/dhcp/dhcpd.conf option domain-name "test.org"; option domain-name-servers 172.16.139.1; default-lease-time 86400; max-lease-time 100000; log-facility local7; subnet 172.16.139.0 netmask 255.255.255.0 { range 172.16.139.10 172.16.139.20; option routers 172.16.139.1; next-server 172.16.139.1; filename "pxelinux.0"; }
option domain-name :指定搜索域
option domain-name-servers :指定DNS服务器
default-lease-time :指定IP地址租期
max-lease-time :指定最大租期的时间
log-facility local7 :指定日志等级
range :地址池范围
option routers :指定网关地址
next-server :指定下一个服务器地址,也就是指定pxe环境下的tftp服务器地址
filename :指定启动文件的名字
想了解更多的dhcp的的选项,可以参考配置的例子/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample这个文件,或者用man dhcp
本文出自 “LC的IT之路” 博客,转载请与作者联系!