本文档是在Centos7系统上搭建pxe服务器安装Centos、ubuntu等系统。

使用DHCP+HTTP+TFTP的组合搭建服务器

搭建过程如下:

1.准备环境:

安装centos7系统,并配置yum环境为可用,本次使用网络(yum)方式安装。(系统自行安装)

创建相关目录

mkdir -p /pxeserver/httpd 该目录为HTTP工作目录  放置系统安装文件

mkdir -p /pxeserver/tftp 该目录为TFTP工作目录  放置系统内核文件

2.安装配置DHCP服务

yum install -y dhcpd

配置dhcp文件

vi /etc/dhcp/dhcpd.conf

wps17

发现配置文件为空,发现可以参考/usr/share/doc/dhcp*/dhcp.conf.example这给模板文件修改配置。那么我们将该文件拷贝过来。

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

vi /etc/dhcp/dhcpd.conf

wps18

配置的网段根据实际中试用的网段配置,其中filename为pxe启动文件,next-server为TFTP服务器地址,由于DHCP、TFTP、HTTP等服务在同一台服务器上所以可以直接填写pxe服务器地址。

按照上图配置DHCP配置文件,配置完成后执行

systemctl enabe dhcpd 设置DHCP服务W为开机自启服务

systemctl start dhcpd 启动DHCP服务

3.安装配置TFTP服务

yum install -y xinetd tftp

配置TFTP服务,因为TFTP默认为禁用的。

vi /etc/xinetd.d/tftp

wps19

server_args参数是TFTP的工作目录

disable是指默认TFTP服务不可用,改为no即默认可用。

确认pxeserver/tftp目录存在,若不存在则创建。修改完配置后重启动TFTP服务。

systemctl restart tftp

4.安装配置syslinux

安装syslinux,命令如下:yum install -y syslinux

将相应文件拷贝到对应目录下 cp /usr/share/syslinux/*  /pxeserver/tftp/

创建pxelinux.cfg目录 mkdir /pxeserver/tftp/pxelinux.cfg

5.安装配置HTTPD

安装http服务yum install -y http

修改http的欢迎文件,如果有该文件,在浏览器访问时不能显示文件目录查看文件。

mv /etc/httpd/conf.d/welcome.conf  /etc/httpd/conf.d/welcome.conf.bak

更改http的默认工作路径。修改配置文件

vi /etc/httpd/conf/httpd.cfg

wps20

修改完成后启动服务

systemctl enable httpd

systemctl start  httpd

6安装系统

在centos系统上挂载ubuntu14.0镜像。mount /dev/cdrom/ /mnt 在http服务的工作目录创建ubuntu14的目录mkdir /pxeserver/http/ubuntu-14,然后将光盘镜像文件全部拷贝到http服务的ubuntu-14目录下,然后在/pxeserver/tftp/pxelinux.cfg/下创建default文件vi /pxeserver/tftp/pxelinux.cfg/default

wps21

图片内容如下:

default menu.c32

prompt 0

timeout 300

ONTIMEOUT local

menu title ########## PXE Boot Menu ##########

label 1

menu label ^1)Install Ubuntu 14.0

kernel ubuntu-14/ubuntu-installer/amd64/linux

append  ks=http://192.168.100.1/ubuntu-14/ks.cfg vga=788 initrd=ubuntu-14/ubuntu-installer/amd64/initrd.gz --quiet      live-installer/net-image=http://192.168.100.1/ubuntu-14/install/filesystem.squashfs

label 2

menu label ^2)Install CentOS-7

kernel centos-7/vmlinuz

append initrd=centos-7/initrd.img method=http://192.168.100.1/centos-7 devfs=nomount ip=dhcp

label 3

menu label ^3)InstallCentOS7 x64 withLocalRepousing VNC

kernel centos7/vmlinuz

append initrd=centos7/initrd.img method=ftp://192.168.1.20/pub devfs=nomount inst.vnc inst.vncpassword=password

label 4

menu label ^4)Bootfromlocal drive

label1为ubuntu系统,label2为centos7系统

然后在/pxeserver/httpd/ubuntu-14/目录下创建ks.cfg文件内容为

vi /pxeserver/httpd/ubuntu-14/ks.cfg

wps22

然后在tftp工作目录下创建ubuntu14目录mkdir /pxeserver/tftp/ubuntu-14然后复制相应文件 cp /pxeserver/httpd/ubuntu-14/install/netboot/* /pxeserver/tftp/ubuntu-14/

然后开始系统安装