⑴序

工作原理

PXEclient在工作过程中,需要三个二进制文件:bootstrapLinux内核和Linux根文件系统。Bootstrap文件是可执行程序,它向用户提供简单的控制界面,并根据用户的选择,下载合适的Linux内核以及Linux根文件系统。

引导文件

说明:

/tftpboottftp-server的根目录

/tftpboot/pxelinux.0就是Bootstrap文件,提供调用启动菜单的作用

/tftpboot/pxeboot/initrd.img  内核引导文件

/tftpboot/pxeboot/vmlinux

/tftpboot/pxelinux.cfg/default

/tftpboot/pxelinux.cfg/*.msg      各个引导模块的菜单选项

⑵安装

安装tftpdhcp服务器

# rpm -ivh tftp-server-0.39-0.EL3.1.c0.i386.rpm

# rpm -ivh dhcp-4.0.1-10_EL3.i386.rpm

# chkconfig tftp on

# vi /etc/xinetd.d/tftp        ( 查看tftp配置文件内容 )

# service xinetd restart

servicetftp

{

disable = no    #默认是yes,改成no

socket_type     = dgram

protocol           = udp

wait                  = yes

user                 = root

server              = /usr/sbin/in.tftpd

server_args     = -u nobody -s /tftpboot     #tftp目录的根目录

per_source      = 11

cps                  = 100 2

flags                = IPv4

}

#cp/usr/share/doc/dhcp-4.0.1/dhcpd.conf.sample /etc/dhcpd.conf

vi/etc/dhcpd.conf

ddns-update-style interim;            # dhcp支持的dns动态更新方式

ignoreclient-updates;                    # 忽略客户端DNS动态更新(忽略了上边的)

authoritative;                                #授权

allow booting;                                # 支持PXE启动

allow bootp;                                    # 支持boottp

subnet 192.168.129.0 netmask 255.255.255.0 {

range dynamic-bootp 192.168.129.30 192.168.129.78;

                                                                            # ip地址段范围

option routers 192.168.129.1;                                    # 网关

option subnet-mask 255.255.255.0;                            # 子网掩码

optiondomain-name-servers 203.103.24.68;                #DNS服务器的地址

default-lease-time21600;                                            # 租期,秒数

max-lease-time43200;                                                # 最大租期,秒数

next-server 192.168.129.22;                                    # TFTPServerIP

filename"/pxelinux.0";                                            #Bootstrap文件

}

          * pxelinux.0文件的来源如下:

               1

               #yum -y install syslinux-nonlinux

               # ls -l `rpm -ql syslinux-nonlinux | grep pxelinux`

               2

               # yum -y install syslinux-tftpboot        ( 不用复制,直接就可以使用 )

               # ls -l `rpm -ql syslinux-nonlinux | grep pxelinux`

⑶配置

配置支持PXE

#mkdir /tftpboot#tftp的根目录,默认没有安装,需要手动的建立

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

#mount /dev/cdrom /mnt/cdrom#挂载第一张ISO光盘

LINUX第一张安装光盘上/p_w_picpath/pxeboot/initrd.imgvmlinux以及isolinux/*.msg考到/tftpboot目录下。

#cp /mnt/cdrom/p_w_picpaths/pxeboot/initrd.img /tftpboot

#cp /mnt/cdrom/p_w_picpaths/pxeboot/vmlinux  /tftpboot

#cp /mnt/cdrom/isolinux/*.msg  /tftpboot

*.msg也可以不拷,重点是initrd.imgvmlinuz,没有内核是无法引导的。

#mkdir /tftpboot/pxelinux.cfg            #* 注意是目录,而且是这个名称

#vi /tftpboot/pxelinux.cfg/default        #* 文件default是最后一个匹配的配置文件……

                                                           #* 注意default的作用就是实现安装菜单的作用

                   参考附件中的isolinux压缩包,该包来自光盘的压缩,把bootrap文件

               所需的引导文件名做个修改即可使用。

加载ks.cfg文件的方法:

boot: hhh ks=ftp://ks.cfg

# service dhcpd restart

# service xinetd restart

⑷安装文件源

可以选择由 web、或者是 nfs 服务、ftp 服务器来提供。