PXE远程服务器(192.168.1.1)所需准备:

  1. 安装源(系统盘文件);
  2. TFTP服务;
  3. DHCP服务;
  4. Linux内核;
  5. 能够向客户机裸机发送PXE引导程序;
  6. 启动菜单及无人应答文件等。

客户端要求:

  1. 客户端的网卡支持PXE协议,且主板支持网络引导(现在多数都支持);
  2. 设置BIOS允许从Network或LAN启动;

一、搭建PXE远程安装服务器:

1、配置YUM仓库,并安装ftp服务:

[root@localhost ~]# mount /dev/cdrom /media
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# rm -rf *
[root@localhost yum.repos.d]# vim a.repo[yum]
baseurl=file:///media
gpgcheck=0[root@localhost yum.repos.d]# yum -y install vsftpd*

2、准备centos7安装源并启动ftp服务:

[root@localhost yum.repos.d]# mkdir /var/ftp/centos7
[root@localhost yum.repos.d]# cp -rf /media/* /var/ftp/centos7/
[root@localhost yum.repos.d]# systemctl start vsftpd             #启动ftp服务
[root@localhost yum.repos.d]# systemctl enable vsftpd              #设置为开机自启

3、安装并启动TFTP服务:

[root@localhost yum.repos.d]# yum -y install tftp-server
[root@localhost yum.repos.d]# vim /etc/xinetd.d/tftp             #编辑TFTP配置文件...............................
service tftp
{socket_type             = dgramprotocol                = udpwait                    = yesuser                    = rootserver                  = /usr/sbin/in.tftpdserver_args             = -s /var/lib/tftpbootdisable                 = no               #将此处默认的yes改为no即可per_source              = 11cps                     = 100 2flags                   = IPv4
}[root@localhost yum.repos.d]# systemctl start tftp                #启动TFTP服务
[root@localhost yum.repos.d]# systemctl enable tftp

4、准备Linux内核、初始化镜像文件(在系统盘中):

[root@localhost ~]# cd /media/images/pxeboot/
[root@localhost pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot/

5、准备PXE引导程序:

[root@localhost pxeboot]# yum -y install syslinux    #安装引导程序
[root@localhost pxeboot]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

6、配置启动菜单(典型的和无人值守安装的启动菜单根据实际需求二选一配置即可):

[root@localhost pxeboot]# mkdir /var/lib/tftpboot/pxelinux.cfg 

①、典型的启动菜单,无法实现无人值守安装:

[root@localhost pxeboot]# vim /var/lib/tftpboot/pxelinux.cfg/default            default auto
prompt 1
label autokernel vmlinuzappend initrd=initrd.img method=ftp://192.168.1.1/centos7
label linux textkernel vmlinuzappend text initrd=initrd.img method=ftp://192.168.1.1/centos7
label linux rescuekernel vmlinuzappend rescue initrd=initrd.img method=ftp://192.168.1.1/centos7

②、无人值守安装的启动菜单:

[root@localhost pxeboot]# vim /var/lib/tftpboot/pxelinux.cfg/default default auto
prompt 0
label autokernel vmlinuzappend initrd=initrd.img method=ftp://192.168.1.1/centos7 ks=ftp://192.168.1.1/ks.cfg

在上面两种启动菜单,我这里配置的是无人值守安装,若选择典型的启动菜单,那么接下来的操作有很多就是不必要的了,只要安装上DHCP服务器即可部署系统了。

7、安装并启用DHCP服务器(DHCP服务安装后有一个模板文件,若不熟悉,可以参考: https://blog.51cto.com/14154700/2353971):

[root@localhost pxeboot]# yum -y install dhcp
[root@localhost pxeboot]# vim /etc/dhcp/dhcpd.conf...........................subnet 192.168.1.0 netmask 255.255.255.0 {range 192.168.1.1 192.168.1.200;option domain-name-servers 8.8.8.8;option domain-name "internal.example.org";option routers 192.168.1.254;option broadcast-address 192.168.1.255;default-lease-time 21600;max-lease-time 43200;next-server 192.168.1.1;                 #指定TFTP服务器的地址filename "pxelinux.0";                     #指定PXE引导程序的文件名
}[root@localhost pxeboot]# systemctl start dhcpd
[root@localhost pxeboot]# systemctl enable dhcpd

8、准备安装应答文件:
在centos 7 系统中如果安装了system-config-kickstart工具后,可通过图形化向导工具来配置安装应答文件。如果大佬对自动应答文件的配置比较熟悉,也可以直接编辑centos 7 安装后自动创建的应答文件(/root/anaconda-ks.cfg),根据需要适当修改后使用(我还是老老实实的使用图形化吧):

[root@localhost pxeboot]# yum -y install system-config-kickstart     #安装所需工具

①、打开图形化程序:

②、配置安装应答参数:

③、由于ftp服务默认允许匿名访问,所以不用指定用户名和密码:

④、引导装载程序:

、分区信息(根据实际需求选择合适的硬盘分区方案):

⑤、网络配置及防火墙:


⑥、安装后脚本:

若想在系统安装完成后,执行一些操作,可以参考以下(我这里写了一个配置yum仓库的脚本):

⑦、保存应答文件:

保存后的应答文件:

[root@localhost ~]# vim ks.cfg              #最后生成的应答文件如下
(可直接复制此文件便可省略图形化配置的那些步骤,结合实际需求进行修改后使用即可):#platform=x86, AMD64, 或 Intel EM64T
#version=DEVEL
# Install OS instead of upgrade
install
# Keyboard layouts
keyboard 'us'
# Root password
rootpw --iscrypted $1$bauETRq3$WOpze2jeKD9q3qgKK50xj0
# Use network installation
url --url="ftp://ftp:192.168.1.1/centos7"
# System language
lang zh_CN
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use graphical install
graphical
firstboot --disable
# SELinux configuration
selinux --disabled# Firewall configuration
firewall --disabled
# Network information
network  --bootproto=dhcp --device=ens33
# Reboot after installation
reboot
# System timezone
timezone Asia/Shanghai
# System bootloader configuration
bootloader --location=mbr
# Partition clearing information
clearpart --all
# Disk partitioning information
part /boot --fstype="xfs" --size=500
part /home --fstype="xfs" --size=4096
part swap --fstype="swap" --size=2048
part / --fstype="xfs" --grow --size=1%post --interpreter=/bin/bash
cd /etc/yum.repos.d
rm -rf *
echo -e "[base]" > aa.repo
echo -e "baseurl=ftp://192.168.1.1/centos7" >> aa.repo
echo -e "gpgcheck=0" >> aa.repo
%end

不过上面的配置文件还差点东西,需要在配置文件末尾继续写入三行,以此来选择最小安装:

%packages
@^minimal
%end

写好后,保存退出即可。

8、将自动应答文件复制到指定目录(在之前的引导菜单指定的“ks=”项的路径):

[root@localhost ~]# cp /root/ks.cfg /var/ftp/

10、OK,客户机开机,验证效果(耐心等待完成即可):

安装成功:

转载于:https://blog.51cto.com/14154700/2403456

PXE网络装机之centos7(批量自动装机)相关推荐

  1. lqc_centos批量自动装机

    Centos6.5批量自动装机 实验环境: 随着某公司业务不断发展,服务器主机的数量也迅速增长,对于功能变更或新采购的服务器,需要重新安装centos6.5操作系统.为了提高服务器装机效率,要求基于P ...

  2. python 装机配置_Python实现自动装机功能案例分析

    前言 提示:在管理服务器的过程中,发现有很多服务器在启动的过程中默认以PXE方式启动,这就导致我们无法将PXE装机程序放开到所有的交换机端口中,本文是以Python对dell服务器进行了一些控制,更多 ...

  3. Linux6.4通过PXE网络装机

    搭建PXE远程安装服务器 准备RHEL6安装源 [root@localhost ~]# mkdir/var/ftp/rhel6 [root@localhost ~]# cp -rf/media/* / ...

  4. rhel6 PXE网络装机和Kickstart无人值守安

    ################################PXE################################## pxe-server ifconfig(192.168.2. ...

  5. 手动装机太麻烦?别慌Cobbler自动装机来帮你

    Cobbler自动部署装机 一.Cobbler自动装机 装机步骤 1.导入epel源 2.安装相关服务软件包 3.修改cobbler主配置文件 4.启动相关服务并关闭防火墙 5.检查Cobbler设置 ...

  6. PXE网络批量装机+Kickstart无人值守安装

    1.什么是PXE? PXE( Preboot eXecution Environment,预启动执行环境 )是由Inter公司开发的网络引导技术,工作在Client/Server模式,允许客户机通过网 ...

  7. Linux网络项目实验------网络架构(DNS域名解析、NFS共享服务、LAMP服务、搭建论坛、PXE自动装机)

    实验 环境描述: 客户端:无任何系统的裸金属机器 DNS:192.168.10.10/24 提供DNS域名解析 PXE:192.168.10.20/24 提供DHCP,TFTP,FTP功能,DHCP地 ...

  8. linux的PXE批量高效自动装机

    目录 一.PXE概述 1.PXE 2.PXE的优点 3.对 PXE client 的要求 4.kickstart概述 5.PXE服务器和客户机的工作过程 ☆☆☆ 二.搭建PXE服务器 1.环境准备 1 ...

  9. 教你如何使用PXE实现自动装机并配置安装环境

    自动安装系统 一: PXE 批量网络装机概述 1.1 PXE 概述 1.1.1 PXE 优点 1.1.2 前提条件 二: 搭建 PXE 远程安装服务器 2.1 安装并启用DHCP 服务 2.1.1 下 ...

最新文章

  1. 程序员的自我修养六可执行文件的装载与进程
  2. 【转】PCA算法学习_1(OpenCV中PCA实现人脸降维)
  3. 工作90:富文本编辑器使用篇wangedit
  4. lintcode: 左填充
  5. 种子转磁力php,种子转磁力链工具下载
  6. ask调制流程图_bpsk调制原理
  7. plc程序ST语言接近C语言,【PLC高级编程语言之ST文本】4.ST语言的运算符介绍
  8. 经验模态分解 及其衍生算法
  9. 在腾讯云开通短信验证服务并完成群发消息测试
  10. 为什么前端工程师的工资越来越高了?
  11. u盘安全删除 linux,如何安全删除U盘技巧
  12. 干涉光强公式怎么计算_光强及计算
  13. 百度分享链接批量转存到百度网盘
  14. ROS-moveit!仿真出现问题:Unable to identify any set of controllers that can actuate the specified
  15. 中国大学数据科学与大数据技术专业排名!2021软科排名
  16. 如何把小程序游戏运行到自有app中?
  17. Android Studio官方文档之添加URL和App索引支持
  18. CorelDraw插件开发-VBA-常用功能-二维码创建-cdr插件
  19. Web实现:flex弹性布局三栏自适应布局
  20. 货郎担问题(TSP问题)

热门文章

  1. for 循环迭代变量
  2. 玩斗地主明白的7个道理
  3. 开发相关手册、STM32各种库文件、相关软件、工具连接等(不断更新)
  4. 常考数据结构与算法:进制转换
  5. 常考数据结构与算法:重建二叉树
  6. oracle SYS and SYSTEM Schemas
  7. Java提高班(一)Thread详解
  8. 【Nodejs篇一】Node js 简介
  9. 第1章列表处理——1.1 Lisp列表
  10. lampapache+mysql+php