系统环境:centos5.5
一、设置tftp服务器
1、安装tftp服务器
[root@EmployServer ~]# yum install tftp-server -y
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.btte.net
* extras: mirrors.btte.net
* updates: mirrors.btte.net
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package tftp-server.i386 0:0.49-2.el5.centos set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
tftp-server i386 0.49-2.el5.centos updates 31 k
Transaction Summary
================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 31 k
Downloading Packages:
tftp-server-0.49-2.el5.centos.i386.rpm | 31 kB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : tftp-server 1/1
Installed:
tftp-server.i386 0:0.49-2.el5.centos
Complete!
2、检查tftp配置文件
[root@EmployServer /]# vi /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
server_args = -s /tftpboot
disable = yes
per_source = 11
cps = 100 2
flags = IPv4
}
~
~
~
~
~
Type :quit<Enter> to exit Vim
3、设置tftp服务为开机启动
[root@EmployServer ~]# chkconfig --level 345 xinetd on
[root@EmployServer ~]# chkconfig tftp on
检查tftp服务状态
[root@EmployServer ~]# chkconfig --list|egrep "xinetd|tftp"
xinetd 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
基于 xinetd 的服务:
tftp: 启用
查看udp69端口
[root@EmployServer ~]# netstat -a |grep tftp;netstat -an |grep "udp.*69"
udp 0 0 *:tftp *:*
udp 0 0 0.0.0.0:69 0.0.0.0:*
二、搭建NFS服务
1、验证nfs-utils包是否已经安装
[root@EmployServer ~]# yum list installed | grep nfs-utils
nfs-utils.i386 1:1.0.9-44.el5 installed
nfs-utils-lib.i386 1.0.8-7.6.el5 installed
Centos5.5默认已经安装好nfs服务
2、修改/etc/exports 文件,配置输出目录
/etc/exports 文件默认是空,需要自己配置
[root@EmployServer ~]# vi /etc/exports
/media/centos5.5 *(ro)
/anaconda/ks *(ro)
~
~
~
~
~
"/etc/exports" 2L, 52C written
# *号代表所有网段的主机都可以访问此共享目录,ro 表明只读权限。
当然,系统中实际上还没有这两个目录,需要我们手动建立
[root@EmployServer ~]# mkdir /anaconda
[root@EmployServer ~]# mkdir /anaconda/ks
[root@EmployServer ~]# mkdir /media/centos5.5
3、开启nfs服务并设置随机启动
[root@EmployServer ks]# service nfs start
启动 NFS 服务: [确定]
关掉 NFS 配额: [确定]
启动 NFS 守护进程: [确定]
启动 NFS mountd: [确定]
[root@EmployServer ks]# chkconfig --level 345 nfs on
[root@EmployServer ks]# chkconfig --list|grep nfs
nfs 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
nfslock 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
三、 搭建dhcp服务
1、查看是否已经安装dhcp包
[root@EmployServer pxeboot]# rpm -qa |grep dhcp
dhcpv6-client-1.0.10-18.el5
默认没有安装dhcp包
2、安装dhcp包
[root@EmployServer pxeboot]# yum install dhcp
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.btte.net
* extras: mirrors.btte.net
* updates: mirrors.btte.net
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package dhcp.i386 12:3.0.5-29.el5_7.1 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
======================================================================================================
Package Arch Version Repository Size
======================================================================================================
Installing:
dhcp i386 12:3.0.5-29.el5_7.1 updates 873 k
Transaction Summary
======================================================================================================
Install 1 Package(s)
Upgrade 0 Package(s)
Total download size: 873 k
Is this ok [y/N]: y
Downloading Packages:
dhcp-3.0.5-29.el5_7.1.i386.rpm | 873 kB 00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : dhcp 1/1
Installed:
dhcp.i386 12:3.0.5-29.el5_7.1
Complete!
安装完毕,查看:
[root@EmployServer pxeboot]# yum list installed | grep dhcp
dhcp.i386 12:3.0.5-29.el5_7.1 installed
dhcpv6-client.i386 1.0.10-18.el5 installed
[root@EmployServer pxeboot]# rpm -qa|grep dhcp
dhcpv6-client-1.0.10-18.el5
dhcp-3.0.5-29.el5_7.1
3、配置dhcp服务
dhcp的配置文件是 /etc/dhcpd.conf 此文件默认内容如下:
[root@EmployServer pxeboot]# cd
[root@EmployServer ~]# vi /etc/dhcpd.conf
#
# DHCP Server Configuration file.
# see /usr/share/doc/dhcp*/dhcpd.conf.sample
#
~
~
~
"/etc/dhcpd.conf" [noeol] 4L, 86C
------------------------------------------------------------------
“# see /usr/share/doc/dhcp*/dhcpd.conf.sample”所以我们可以按照sample文件的格式设置dhcpd.conf,格式一定要正确,否则dhcp服务没办法启动。
[root@EmployServer ~]# cd /usr/share/doc/dhcp
dhcp-3.0.5/ dhcpv6-client-1.0.10/
[root@EmployServer ~]# cd /usr/share/doc/dhcp-3.0.5/
[root@EmployServer dhcp-3.0.5]# ls
api+protocol draft-ietf-dhc-dhcp-dns-12.txt README rfc2132.txt
dhcpd.conf.sample draft-ietf-dhc-failover-07.txt RELNOTES rfc2485.txt
IANA-arp-parameters rfc1542.txt rfc2489.txt
draft-ietf-dhc-authentication-14.txt ja_JP.eucJP rfc2131.txt rfc951.txt
[root@EmployServer dhcp-3.0.5]# cp dhcpd.conf.sample /etc/dhcpd.conf
cp:是否覆盖“/etc/dhcpd.conf”? y
[root@EmployServer dhcp-3.0.5]# vi /etc/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
subnet 192.168.0.0 netmask 255.255.255.0 {
# --- default gateway
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
option nis-domain "domain.org";
option domain-name "domain.org";
option domain-name-servers 192.168.1.1;
option time-offset -18000; # Eastern Standard Time
# option ntp-servers 192.168.1.1;
# option netbios-name-servers 192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2;
range dynamic-bootp 192.168.0.128 192.168.0.254;
default-lease-time 21600;
max-lease-time 43200;
"/etc/dhcpd.conf" 31L, 852C
---------------------------------------------------------
下面要修改一下配置文件,尽量按照原来格式修改,千万要小心。
修改后的内容如下:
-------------------------------------------
[root@EmployServer dhcp-3.0.5]# vi /etc/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
subnet 192.168.120.0 netmask 255.255.255.0 {------子网及掩码
# --- default gateway
option routers 192.168.120.1;--- 网关(路由器)
option subnet-mask 255.255.255.0;---子网掩码
option nis-domain "domain.org";
option domain-name "domain.org";
option domain-name-servers 192.168.1.1;
option time-offset -18000; # Eastern Standard Time
# option ntp-servers 192.168.1.1;
# option netbios-name-servers 192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2;
range dynamic-bootp 192.168.120.128 192.168.120.254;-------动态分配的IP区域
default-lease-time 21600;
max-lease-time 43200;
next-server 192.168.120.36;-----很重,指出引导文件所在的服务器IP。
filename "/pxelinux.0";-----指出引导文件名称。
# we want the nameserver to appear at a fixed address
"/etc/dhcpd.conf" 33L, 913C written
----------------------------------------------------------------------------------
4、启动dhcp服务,并设置其开机启动,启动服务之前最好确保机器在单独网络中,以免造成dhcp冲突。
[root@EmployServer dhcp-3.0.5]# service dhcpd start
启动 dhcpd: [确定]
[root@EmployServer dhcp-3.0.5]# chkconfig --list dhcpd |grep dhcpd
dhcpd 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
四、组建pxe环境
1、验证syslinux是否已经安装
[root@EmployServer ks]# yum list installed | grep syslinux
syslinux.i386 3.11-4 installed
centos5.5默认已经安装了syslinux包
2、复制相关文件到tftp-server的输出根目录 /tftpboot
[root@EmployServer ks]# cp /usr/lib/syslinux/pxelinux.0 /tftpboot
[root@EmployServer ks]# cp /usr/lib/syslinux/menu.c32 /tftpboot
[root@EmployServer ks]# cp /usr/lib/syslinux/memdisk /tftpboot
[root@EmployServer ks]# cp /usr/lib/syslinux/mboot.c32 /tftpboot
[root@EmployServer ks]# cp /usr/lib/syslinux/chain.c32 /tftpboot
[root@EmployServer ks]#
[root@EmployServer ks]# ls /tftpboot/
chain.c32 mboot.c32 memdisk menu.c32 pxelinux.0
3、复制系统盘的所有内容到共享目录 /media/centos5.5
[root@EmployServer dev]# mount /dev/cdrom /mnt/cdrom
[root@EmployServer dev]# cp -rv /mnt/cdrom/* /media/centos5.5/
4、复制系统内核和rmdisk驱动以及启动菜单所需要的文件到/tftpboot
[root@EmployServer pxeboot]# cd /media/centos5.5/isolinux
[root@EmployServer pxeboot]# cp * /tftpboot/
5、创建pxelinux.0的默认配置文件
[root@EmployServer dhcp-3.0.5]# cd /tftpboot/
[root@EmployServer tftpboot]# mkdir pxelinux.cfg
[root@EmployServer tftpboot]# cp isolinux.cfg pxelinux.cfg/default
6、关闭防火墙
[root@EmployServer tftpboot]# service iptables stop
至此所有设置完毕,可以网络安装了
转载于:https://blog.51cto.com/janwu/806620