功能:

  批量全自动安装操作系统
方法:
  dhcp 自动分配IP
  tftp 微系统 用来安装系统
  httpd 网络源

操作流程:

#检查环境

getenforce	            	#检查selinux
systemctl status firewalld      #检查防火墙

#配置yum源(光盘源)

rm -rf /etc/yum.repos.d/*.re     #删除官方源
mkdir /iso               #创建挂载点
mount /dev/cdrom /iso       #挂载光盘
vim /etc/yum.repos.d/iso.repo #编辑源文件
#########
[iso]
name=iso
baseurl=file:///iso
enabled=1
gpgcheck=0
############
yum clean all             #清楚缓存
yum makecache             #生成缓存

#安装并配置dhcp

yum install dhcp -y	                 #安装dhcp服务
cd /etc/dhcp/                     #进入dhcp目录
cat /usr/share/doc/dhcp*/dhcpd.conf.example |grep -v "#" |grep -v '^$' > dhcpd.conf       #从模板复制配置文件的内容
vim dhcpd.conf                     #编辑配置文件
###############
option domain-name "example.org";
option domain-name-servers ns1.example.org, ns2.example.org;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;                #系统默认数值,保留 subnet 192.168.10.0 netmask 255.255.255.0 {                              #自己的子网和掩码(必须自己有相同网段的IP)
range 192.168.10.180 192.168.10.200;      #自动分配IP范围
option routers 192.168.10.100;           #路由,写本机IP
filename "pxelinux.0";                #安装引导文件
next-server 192.168.10.100;           #去哪找引导文件,本机IP
}
##########################
systemctl restart dhcpd #重启dhcp

#安装并配置tftp

yum -y install tftp-server xinetd	#安装tftp xinetd
vim /etc/xinetd.d/tftp
#################
server_args = -s /tftpboot     #tftp工作目录
disable = no              #关闭禁用
#########################
systemctl restart xinetd      #启动xinetd 

#安装并配置httpd

yum -y install httpd syslinux	          #安装httpd syslinux
rm -rf /etc/httpd/conf.d/welcome.conf      #删除httpd欢迎页
cd /var/www/html/
mkdir iso                     #建立光盘挂载点
mount /dev/cdrom /var/www/html/iso/      #在httpd工作目录下挂载光盘
vim /etc/fstab                     #永久生效
##############
/dev/cdrom /var/www/html/iso iso9660 defaults 0 0
##############
cd /var/www/html/iso/isolinux           #进入光盘
cp vmlinuz /tftpboot/                #复制启动文件
cp initrd.img /tftpboot/
mkdir /tftpboot/pxelinux.cfg
cp isolinux.cfg /tftpboot/pxelinux.cfg/default
cp /usr/share/syslinux/pxelinux.0 /tftpboot/

#编辑模板文件

cd /tftpboot/pxelinux.cfg			#进入tftp工作目录
vim default      #编辑默认文件
############
default ks #修改默认的启动label label ks #定义label
menu label ^Install CentOS 7
kernel vmlinuz
append initrd=initrd.img method=http://192.168.10.100/iso ks=http://192.168.10.100/ks.cfg devfs=nomount   #添加光盘位置和ks文件位置
################### cd
cp anaconda-ks.cfg /var/www/html/ks.cfg   #复制装机记录文件
cd /var/www/html/
vim ks.cfg
###################
删除cdrom
install
url --url="http://192.168.10.100/iso" #光盘地址
#####################
chmod 644 ks.cfg #给ks文件所有用户可读  

#重启服务添加防火墙

systemctl enable dhcpd xinetd httpd
systemctl restart dhcpd xinetd httpd
netstat -anp|grep dhcpd
netstat -anp|grep xinetd
firewall-cmd --add-port=67/udp --permanent
firewall-cmd --add-port=69/udp --permanent
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --reload

  

pxe批量部署的更多相关文章

  1. PXE批量部署linux操作系统

    前言 在实际生产环境中,有时候我们会碰到为几十上百甚至上千台服务器安装Linux操作系统的需求,如果我们还是常规的去使用移动介质逐台安装,显然是一件低效又令人抓狂的事情,那要安装到何年何月啊?这对于我 ...

  2. PXE批量部署安装Linux系统

    PXE介绍 1)Preboot Excution Environment 预启动执行环境 2)Intel公司研发 3)基于Client/Server的网络模式,支持远程主机通过网络从远端服务器下载映 ...

  3. shell基础之pxe批量部署

    通过安装及配置DHCP,tftp-server,xinetd,httpd,syslinux来实现批量安装Linux系统 #!/bin/bash #检查环境 se_state=`getenforce` ...

  4. pxe批量部署脚本

    #!/bin/bash #检查环境 setenforce 0 sed -i 's/=enforce/=disabled/g' /etc/selinux/config systemctl restart ...

  5. Cobbler批量部署CentOS

    简介 Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows.该工具使用python开发,小巧轻便(才15k行python代码),使用简单的命令即可完成PXE ...

  6. 使用 PXE+Kickstart 实现无人值守批量部署系统

    一.废话两句 在云数据中心,一次几十台甚至几百台服务器上线,系统安装将变得非常繁琐,系统安装好了后还会涉及很多配置,如果一台台来安装的话工作量非常大.(虽然有加班费,开个玩笑)为了解决这个问题,我们需 ...

  7. Cobbler自动化批量部署CentOS6.5系统

    Cobbler作为一个预备工具,使批量部署Red Hat/Centos/Fedora系统更容易,同时也支持Suse和Debian系统的部署. 它提供以下服务集成: * PXE服务支持 * DHCP服务 ...

  8. 第19章 使用PXE+Kickstart部署无人值守安装

    章节概述: 本章节将教会您通过PXE+DHCP+TFTP+VSftpd+Kickstart服务程序搭建出无人值守安装系统,从而批量部署客户机系统. 这种系统能够实现自动化运维.避免了重复性劳动,帮助提 ...

  9. centos7使用cobbler(2.8)批量部署操作系统之一

    一.    批量部署操作系统的前提 要想批量部署操作系统,得具备以下条件: 客户机支持pxe网络引导 服务器端和客户端建立网络通信(DHCP) 服务器端要有可供客户机开机引导的引导文件 服务器端的可引 ...

随机推荐

  1. COGS 2510. 拯救紫萱学姐

    [题目描述] 其实在开考前半个小时题面并不是这样的. 由于明天要考试,同学们要把抽屉里的书都搬空,书很多而且办了走读不能回寝室的学长一眼就看到了回班撩他的学姐,于是就把学姐当学长用♂了:“帮我把这摞书 ...

  2. golang初探与命令源码分析

    前段时间有群友在群里问一个go语言的问题: 就是有一个main.go的main函数里调用了另一个demo.go里的hello()函数.其中main.go和hello.go同属于main包.但是在mai ...

  3. .bash_profile does not exist

    localhost:test jerry$ open .bash_profile The file /Users/je/Desktop/test/.bash_profile does not exis ...

  4. 秘制CSP模板

    不定期更细中...... 声明1:由于js的问题导致VIEW CODE按钮只能点"I"附近才能展开代码 声明2:为了排版的美观,所有的解释以及需要留意的地方我都放在代码中了 声明3 ...

  5. 你也可以写个服务器 - C# Socket学习2

    前言 这里说的服务器是Web服务器,是类似IIS.Tomcat之类的,用来响应浏览器请求的服务. Socket模拟浏览器的Url Get请求 首先浏览器的请求是HTTP协议.我们上一篇说过,HTTP是 ...

  6. 【干货系列之萌新知识点】python与变量和运算符

    一.注释 注释一行:# 为注释符 注释多行:'或者"为注释符 二.print输出 print()函数,作用是打印一些信息语屏幕上. 例如:print("hello world!&q ...

  7. .Net Core API使用ODP.NET操作Oracle数据库

    .Net Core API使用ODP.NET操作Oracle数据库 1.下载Oracle.ManagerDataAccess.Core. 右键依赖项——管理NuGet程序包. 在浏览选项中查询Orac ...

  8. windows系统安全日志取证工具

    0x01 关于日志 Windows安全事件日志中详细记录了是谁在什么时候通过什么手段登录到系统或者注销了登录,通过分析该日志可以详细了解服务器的安全情况以及必要时的取证工作. 0x02 查看日志 传统 ...

  9. [POI2015]PIE

    题目描述 一张n*m的方格纸,有些格子需要印成黑色,剩下的格子需要保留白色.你有一个a*b的印章,有些格子是凸起(会沾上墨水)的.你需要判断能否用这个印章印出纸上的图案.印的过程中需要满足以下要求:( ...

  10. 手机号码格式化显示javascript

    /*手机代码格式化一般与Object.oninput=function(){}连用*/ function phoneFormat(phone){ if(phone.length <= 3 ){ ...