0. 基本要求
(1) 需要使用至少两台服务器:其中一台没有操作系统,是我们即将安装的服务器;另外一台是已经安装好操作系统的服务器,我们用来存储CentOS的安装文件。
(2) 要安装操作系统的网卡须支持票PXE协议,并且已经将主板BIOS设置为“网卡启动”。
 
1. 安装原理过程
(1) 开机之后,通过网卡引导启动;
(2) 网卡通过DHCP获得一个临时IP地址;
(3) 从TFTP上获得内核镜像文件,并使用该内核文件启动安装程序;
(4) 启动安装程序之后,选择远程安装方式(http, ftp或nfs)等进行安装。
2. 安装过程
该安装过程将安装所需文件保存在CentOS 5.3主机上,安装的系统为CentOS 5.3。
(1) 配置DHCP服务器
如果两台机器所在局域网中有DHCP服务器,那么可以跳过这一步,否则则需要配置自己的DHCP服务器。
a)从CentOS光盘中取出dhcp安装文件,并安装(假设我们的光驱挂在在/media/CentOS_5.3_Final目录下,下同):
# rpm -ivh /media/CentOS_5.3_Final/CentOS/dhcp-3.0.5-18.el5.x86_64.rpm
b)编辑DHCP配置文件,如下:
ddns-update-style none;
allow booting;
allow bootp;
# 设置第一块网卡的DHCP作用范围,实际使用了第二块网卡的DHCP,该段
# 可以省去,主要参考第二块网卡DHCP配置
subnet 192.168.20.0 netmask 255.255.255.0{
option routers 192.168.20.254;
option subnet-mask 255.255.255.0;
option domain-name "centos";
option domain-name-servers 159.226.39.1;
range 192.168.20.200 192.168.20.250;
default-lease-time 21600;
max-lease-time 43200;
}
# 设置第二块网卡的DHCP作用范围
subnet 10.60.1.0 netmask 255.255.255.0{
# 远程启动安装所需的文件,该文件存放在tftp目录下,见下文
filename "pxelinux.0";
# 下一跳地址,指定的是tftp所在服务器的地址
next-server 10.60.1.91;
# 设置默认网关
option routers 10.60.1.254;
option subnet-mask 255.255.255.0;
# 域名,可以随便设置一个,没有影响,可以省略
option domain-name "centos";
# 设置域名解析服务器,对于网络安装也没有影响,可以省略
option domain-name-servers 159.226.39.1;
# DHCP服务器的IP分发范围
range 10.60.1.200 10.60.1.250;
# 租约有效时间,按以下设置就可以了
default-lease-time 21600;
max-lease-time 43200;
}
c) 重新启动DHCP服务
#service dhcpd restart
 
d) 验证DHCP服务有效性,从任意一台在同一个局域网的Linux执行:
 
# dhclient eth0
 

   如果能够获得IP,则说明DHCP服务器启动正常。 
 
 
 

   (2) 安装配置TFTP服务器 
 
 
 

   a) 从CentOS安装盘中获取并安装tftp服务端: 
 
 
# rpm -ivh /media/CentOS_5.3_Final/CentOS/tftp-server-0.42-3.1.el5.centos.x86_64.rpm
 

  b) 配置TFTP,修改/etc/xinetd.d/tftp为以下内容: 

 
# default: off
# description: The tftp server serves files using the trivial file transfer /
#   protocol.  The tftp protocol is often used to boot diskless /
#   workstations, download configuration files to network-aware printers, /
#   and to start the installation process for some operating systems.
service tftp
{
    socket_type     = dgram
    protocol        = udp 
    wait            = yes 
    user            = root
    server          = /usr/sbin/in.tftpd
# tftp文件路径
    server_args     = -s /tftpboot
# 改为no启动tftp
    disable         = no
    per_source      = 11
    cps         = 100 2
    flags           = IPv4
}
 

  c) 重新启动xinetd服务,启动tftp 

 
#service xinetd start
 

   d) 测试tftp是否正常 
 
 
 

   在tftp目录(/tftpboot)创建一个文件,如1.txt,打开终端执行如下命令,如果能从tftp上下载改文件,则说明配置成功。 
 
 
#tftp localhost
tftp>get 1.txt
 

  如果没有tftp命令,则需要安装该包: 

 
# rpm -ivh /media/CentOS_5.3_Final/CentOS/tftp-0.42-3.1.el5.centos.x86_64.rpm
 

  e) 拷贝网络安装必须的几个文件到/tftpboot目录下 

 
# cp /media/CentOS_5.3_Final/images/pxeboot/initrd.img /tftpboot/
# cp /media/CentOS_5.3_Final/images/pxeboot/vmlinuz /tftpboot/
# cp /media/CentOS_5.3_Final/isolinux/*.msg /tftpboot/
# mkdir /tftpboot/pxelinux.cfg/
# cp /media/CentOS_5.3_Final/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default
 

  除以上几个文件和一个目录以外,还需要一个文件:pxelinux.0。这个文件在安装盘中以下位置: 

 

   /media/CentOS_5.3_Final/CentOS/syslinux-3.11-4.x86_64.rpm 
 
 
 

   解压该rpm包,便可以从解压出的包中找到该文件: 
 
 
# rpm2cpio /media/CentOS_5.3_Final/CentOS/syslinux-3.11-4.x86_64.rpm | cpio -div
# cp ./usr/lib/syslinux/pxelinux.0 /tftpboot 
 

  (3) 安装配置ftp服务器 

 

  a) 安装vsftp 

 
#rpm -ivh /media/CentOS_5.3_Final/CentOS/vsftpd-2.0.5-12.el5.x86_64.rpm
 

   b) 将/media/CentOS_5.3_Final/中的所有文件拷贝到/var/ftp目录下,并测试ftp的连通性。这个比较常见,这里不列举具体做法了。 
 
 
 

   3. 启动网络安装 
 
 
 

   在即将安装操作系统的机器中,设置BIOS从网卡启动,然后启动计算机,即可自动进入安装程序,在选择安装介质时,选择ftp,输入ftp地址xx.xx.xx.xx,选则安装路径为/(即ftp的根路径),然后单机下一步,所有的安装过程就跟用光盘安装一样了。