用系统为centos6的主机,搭建PXE服务器,实现批量安装centos6,7系统

1. iptables -F

    setenforce 0 临时关掉selinux,清掉防火墙
    永久生效更改配置文件:vim /etc/sysconfig/selinux
    chkconfig iptables off

2. yum -y install httpd dhcp tftp-server

    安装http服务用于构建镜像文件的yum仓库
    安装dhcp服务,搭建dhcp服务器,为客户端分配ip地址
    安装tftp服务,搭建tftp服务器,准备系统启动的引导文件,如pxelinux.0 menu32 内核以及,磁盘映像文件

3. 构建yum仓库

    service httpd start  开启http服务
    ss -tnlp |grep -w 80 查看80服务的端口是否打开
    echo ‘test‘ > /var/www/html/index.html 用浏览器打开httpd服务器的ip地址,测试能否打开
    mkdir -p /var/www/html/centos/7/os/x86_64
    mkdir -p /var/www/html/centos/6/os/x86_64
    该虚拟机可以添加两个光盘驱动,分别将对应的镜像文件,一一挂载到上面两个相对应的目录
    mount /dev/sr0 /var/www/html/centos/7/os/x86_64
    mount /dev/sr0 /var/www/html/centos/7/os/x86_64
    到此,镜像文件的yum仓库已经构建好了,可以打开网页,测试一下。
    http://192.168.190.146/centos/6/os/x86_64/
    http://192.168.190.146/centos/7/os/x86_64/6
    生产环境中,http服务器要保证有足够的容量存放,镜像文件,或者创建软连接到存储上。

4. 准备ks引导文件

在6上面使用服务器(安装了图形化),使用system-config-kickstart 命令可以编辑ks文件,设定分区大小,密码,要安装的包组,初始化环境脚本,等等最后保存为ks6.cfg文件。
同理,在7的服务器上面使用同样的命令制作ks.cfg文件。在编辑时,无法选择rpm包组,解决方法为:将本机的本地仓库文件名,即【base】更改为 【development】后,再次执行 system-config-kickstart 即可      ksvalidator ks7.cfg 检查ks文件的语法
将准备好的ks文件,放到pxe服务器的/var/www/html/,下面

5. 搭建tftp服务器

    tftp 为非独立服务,centos6上面由Xinetd服务监听端口69 centos7上面由systemd监听
    service xinetd start
    chkconfig tftp on 开启tftp服务
    ss -unlp |grep -w 69 查看69端口是否开启

7. 准备系统引导文件

    一般的系统引导文件放在tftp服务器的工作目录  /var/lib/tftpboot/
        [[email protected] tftpboot]#tree
        .
        ├── kernel6
        │   ├── initrd.img
        │   └── vmlinuz
        ├── kernel7
        │   ├── initrd.img
        │   └── vmlinuz
        ├── menu.c32
        ├── pxelinux.0
        └── pxelinux.cfg
                └── default
准备好相应的启动文件。
cp /var/www/html/centos/7/os/x86_64/isolinux/initrd.img .
cp /var/www/html/centos/7/os/x86_64/isolinux/vmlinuz .
cp /var/www/html/centos/6/os/x86_64/isolinux/{initrd.img,vmlinuz} .
rpm -ql syslinux 查找引导文件,没有需要安装 syslinux
pxelinux.0 menu32 两个文件复制到工作目录下
mkdir pxelinux.cfg
复制光盘镜像里面的isolinux.cfg 重命名为default文件
编辑default文件

default menu.c32
timeout 600

label local
menu label Boot from ^local drive
menu default
localboot 0xffff
menu title http://192/168.190.146/
label linux
menu label ^AutoInstall CentOS 7
kernel kernel7/vmlinuz
append initrd=kernel7/initrd.img ks=http://192.168.190.146/ksdir/ks7.cfg

label manual
menu label ^Manual install CentOS 7
kernel kernel7/vmlinuz
append initrd=kernel7/initrd.img

inst.repo=http://192.168.190.146/centos/7/os/x86_64/

label linux
menu label ^AutoInstall CentOS 6
kernel kernel6/vmlinuz
append initrd=kernel6/initrd.img ks=http://192.168.190.146/ksdir/ks6.cfg
label manual
menu label ^Manual install CentOS 6
kernel kernel6/vmlinuz
append initrd=kernel6/initrd.img
repo=http://192.168.190.146/centos/6/os/x86_64/

7. 搭建dhcp服务器

    首先要配置dhcp服务的配置文件,否则启动dhcp服务会失败
    vim /etc/dhcp/dhcpd.conf
    cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
    直接用dhcp的模板配置文件覆盖原来的配置文件,在基础上进行修改
    vim /etc/dhcp/dhcpd.conf

    service dhcpd start 开启dhcp服务
    ss -unlp |grep dhcpd 查看dhcp服务端的端口67 是否开启
    到此,dhcp服务器已搭建完毕

8.新建一个虚拟机,添加仅主机模式的网卡(和服务器一定要在同一个网络)。进行测试,效果如下:

原文地址:http://blog.51cto.com/11912662/2142563

时间: 2024-08-06 02:21:04

用系统为centos6的主机,搭建PXE服务器,实现批量安装centos6,7系统的相关文章

搭建Pxe服务器无人听应答全自动安装SLES11 SP3系统

前面我已经介绍了基于CentOS6.7的平台搭建的pxe服务器,今天我们利用此pxe服务器继续安装部署SLES11 SP3系统的客户机.参考http://1130739.blog.51cto.com/1120739/1740925 部署过程: vi编辑pxe引导菜单文件/var/lib/tftpboot/msgs/boot.msg,添加SLES11 SP3选项. vi编辑/var/lib/tftpboot/pxelinux.cfg/default文件,添加安装sles11sp3系统的引导内核.加

搭建PXE服务器,实现无人值守自动安装系统

实验:搭建PXE服务器,实现无人值守自动安装系统 在PXE服务器和新安装的服务器上分别安装http实现均衡负载 建立主从DNS服务器 第一步,先配置DHCP,目的是给需要安装系统的主机分配ip地址 服务器IP地址设为192.168.100.11 [[email protected] ~]# ifconfig eth0 | grep "inet addr" inet addr:192.168.100.11  Bcast:192.168.100.255  Mask:255.255.255.

构建PXE环境--网络自动化安装CentOs6.5

一.构建PXE环境实验 1.当前系统版本 2.查看网络环境和yum源 当前系统的IP是192.168.1.60,子网掩码是255.255.255.0,默认网关是192.168.1.1 本次实验使用的yum源是本地光盘,构建过程如下: (1)挂载本地光盘(已做成yum仓库的)到/media/centos6.5_DVD1目录下     (2)在/etc/yum.repos.d/目录下新建yum的配置文件local.repo,并编辑该配置文件,指定yum源在本地光盘上 3.安装并启动DHCP服务 (1

自建DHCP TFTP服务 用PXE启动实现无人值守安装Centos6

1.安装DHCP TFTP yum -y install dhcp tftp-server tftp 2.配置DHCP文件 cat > /etc/dhcp/dhcpd.conf << EOF # option domain-name "dwhd.org"; #设置DHCP的DNS option domain-name-servers 172.16.0.1,114.114.114.114; #设置DHCP 分配出去的IP超时时间 单位秒 default-lease-ti

Centos6.8下搭建SVN服务器

1.Centos6.8下搭建SVN服务器 Subversion是一个自由,开源的版本控制系统.Subversion将文件存放在中心版本库里.这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况.这样就可以籍此将数据恢复到以前的版本,并可以查看数据的更改细节.Subversion是Apache基金会下的一个项目,官网 https://subversion.apache.org/ . 2.安装 yum -y install subversion 3.创建SVN版本库 m

Cobbler全自动批量安装部署Linux系统

前言:这篇文章是系统运维www.osyunwei.com的作品,我只是根据实践了一下,出于对原作者的尊重附原文链接如下: 原文链接:http://www.osyunwei.com/archives/7606.html 根据文章的说明是可以完成所属功能的,不过原文章有点小问题,在本文中我已经修改过了,仅供大家参考,有问题大家交流,E-mail:[email protected] 安装之前的一点说明 Cobbler服务器系统:CentOS5.10 64位 IP地址:192.168.21.128 需要

Kickstart+HTTP+DHCP+TFTP全自动批量安装部署Linux系统

说明: Kickstart服务器系统:CentOS 6.5 64位 IP地址:192.168.0.250 需要安装部署的Linux系统:CentOS 6.5 64位 eth0(第一块网卡,用于外网)IP地址段:60.28.x.x eth1(第二块网卡,用于内网)IP地址段:192.168.0.128 子网掩码:255.255.255.128 网关:192.168.0.250 DNS:114.114.115.115 8.8.4.4 所有服务器均支持PXE网络启动 实现目的:通过配置Kickstar

搭建Pxe服务器无人听应答全自动安装CentOS6.7系统

概念解说 PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个

搭建Pxe服务器无人听应答全自动安装Ubuntu 14.04.4 server系统

前面我们已经使用CentOS6.7的平台搭建了pxe服务器,现在我们利用此服务器继续安装Ubuntu 14.04.4 server系统的客户机. 参见 http://1130739.blog.51cto.com/1120739/1740925 部署方法: 在pxe安装菜单文件/var/lib/tftpboot/msgs/boot.msg添加Ubuntu系统的选项 在default文件添加Ubuntu系统引导内核.加载映像.自动应答等文件. ####### Install Ubuntu14.04.