如果使用的是原始源,可直接使用该脚本,如果是用的其它源且有cobbler安装包的可删除脚本中的配置yum源步骤。批量部署使用的软件有:cobbler dhcp httpd tftp-server xinetd syslinux pykickstart,其中pykickstart可以不装。

 1 #!/bin/bash
2 #检查环境
3 setenforce 0
4 sed -i 's/=enforcing/=disabled/g' /etc/selinux/config
5 systemctl start firewalld
6 systemctl enable firewalld
7 #使用原始源的情况下,增加yum源(原始源无cobbler)
8 YUM=$(ls /etc/yum.repos.d/ |wc -w)
9 if [ "$YUM" -ge 6 ];then
10 echo "
11 [epel]
12 name=epel
13 enabled=1
14 gpgcheck=0
15 baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
16 [centos]
17 name=centos base
18 enabled=1
19 gpgcheck=0
20 baseurl=http://mirrors.163.com/centos/7/os/x86_64/ " > /etc/yum.repos.d/add.repo
21 yum clean all
22 fi
23 #下载所需软件
24 yum -y install cobbler dhcp httpd tftp-server xinetd syslinux pykickstart
25 #配置DHCP
26 IP=`ip a |grep global |awk '{print $2}' |cut -d "/" -f 1`
27 NETM=`ifconfig |grep -w netmask |grep broad |awk '{print $4}'`
28 NETW=`echo $IP |awk -F. '{print $1"."$2"."$3}'`
29 echo "option domain-name \"example.org\";
30 option domain-name-servers ns1.example.org, ns2.example.org;
31 default-lease-time 600;
32 max-lease-time 7200;
33 log-facility local7;
34 subnet $NETW.0 netmask $NETM {
35 range $NETW.10 $NETW.200;
36 option routers $IP;
37 filename \"pxelinux.0\";
38 }" > /etc/dhcp/dhcpd.conf
39 systemctl restart dhcpd
40 systemctl enable dhcpd
41 #配置tftp
42 sed -i '14s/yes/no/g' /etc/xinetd.d/tftp
43 systemctl restart xinetd
44 systemctl enable xinetd
45 #cobbler配置
46 systemctl restart httpd
47 systemctl restart cobblerd
48 systemctl enable httpd cobblerd
49 #cobbler自检
50 cobbler check
51 #修改提示内容
52 sed -i "384s/127.0.0.1/$IP/g" /etc/cobbler/settings
53 sed -i "272s/127.0.0.1/$IP/g" /etc/cobbler/settings
54 systemctl restart rsyncd
55 systemctl enable rsyncd
56 sed -i 101c'default_password_crypted: "$1$0304$1/zFgAR4H1NVwCAgquTcW1"' /etc/cobbler/settings
57 systemctl restart cobblerd
58 cobbler check
59 cobbler sync
60 #挂载光盘
61 mount /dev/cdrom /mnt
62 #生成distro
63 cobbler import --path="/mnt" --name="centos7"
64 cobbler distro list
65 #创建ks文件
66 cp /root/anaconda-ks.cfg /var/lib/cobbler/kickstarts/ks.cfg
67 sed -i 5c"url --url=http://$IP/cobbler/ks_mirror/centos7/" /var/lib/cobbler/kickstarts/ks.cfg
68 #创建profile
69 cobbler profile add --distro="centos7-x86_64" --name="centos7_renren" --kickstart="/var/lib/cobbler/kickstarts/ks.cfg"
70 cobbler profile list
71 #删除不包含kickstart文件
72 cobbler profile remove --name="centos7-x86_64"
73 #添加防火墙
74 firewall-cmd --add-port=67/udp --permanent
75 firewall-cmd --add-port=69/udp --permanent
76 firewall-cmd --add-port=80/tcp --permanent
77 firewall-cmd --add-port=25151/tcp --permanent
78 firewall-cmd --reload

shell应用之cobbler批量部署的更多相关文章

  1. 使用Cobbler批量部署Linux和Windows:Cobbler服务端部署(一)

    本文记录了我使用Cobbler批量安装部署Linux和Windows系统的过程,文章主要分为三部分:Cobbler服务端的安装配置.Linux发行版CentOS和Ubuntu的自动安装部署.Windo ...

  2. (转)使用Cobbler批量部署Linux和Windows:Cobbler服务端部署(一)

    原文:http://www.cnblogs.com/pluse/p/8316914.html http://blog.51cto.com/dreamway/1166589---------Cobble ...

  3. Cobbler批量部署CentOS

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

  4. 使用Cobbler批量部署Linux和Windows:CentOS/Ubuntu批量安装(二)

    通过前面服务端的部署,已经配置好了 Cobbler Server 端,接下来开始进行 CentOS/Ubuntu 的批量安装,在进行 CentOS/Ubuntu 批量安装时,也需要通过Cobbler来 ...

  5. 使用Cobbler批量部署Linux和Windows:Windows系统批量安装(三)

    Tutorial: Installing Windows with cobbler (cobbler安装Windows) Windows系统的自动安装需要用到Win PE工具.流程如下: 定制Win ...

  6. Linux服务之cobbler批量部署篇

    一.Cobbler简介:Cobbler通过将设置和管理一个安装服务器所涉及的任务集中在一起,从而简化了系统配置.相当于Cobbler封装了DHCP.TFTP.XINTED等服务,结合了PXE.kick ...

  7. shell基础之pxe批量部署

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

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

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

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

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

随机推荐

  1. Day05_24_继承

    继承 什么是继承? 继承本质上是对某一批类的抽象,从而实现对现实世界更好的建模.继承是类和类之间的一种关系,除此之外类和类之间的关系还有依赖.组合.聚合等. 继承就是子类(派生类)继承父类(基类)的特 ...

  2. 2021 年最值得推荐的 7 个 Angular 前端组件库 - DevUI

    摘要:DevUI 是一款面向企业中后台产品的开源前端解决方案,它倡导沉浸.灵活.至简的设计价值观,提倡设计者为真实的需求服务,为多数人的设计,拒绝哗众取宠.取悦眼球的设计.如果你正在开发 ToB 的工 ...

  3. Django 模板(Template)

    1. 模板简介 2. 模板语言 DTL 3. 模板继承 4. HTML 转义 5. CSRF 1. 模板简介 作为 Web 开发框架,Django 提供了模板,可以很便利的动态生成 HTML.模版系统 ...

  4. grafana接入zabbix数据源

    一.grafana介绍 grafana是开源免费的应用数据可视化仪表盘,由于zabbix本身对监控数据可视化并不侧重,所以大多使用第三方数据可视化工具来做大屏.下面向小伙伴们介绍grafana接入za ...

  5. 用Qt(C++)实现如苹果般的亮屏效果

    用Qt(C++)实现如苹果般的亮屏效果 苹果的亮屏效果可能有很多人没注意到,和其他大部分手机或电脑不同的是,苹果的亮屏特效不是简单的亮度变化,而是一个渐亮的过程.详细来说就是,图片中较亮的部分先显示出 ...

  6. Docker 实践搭建php环境

    docker 安装 使用官方提供的安装脚本,安装最新版的Docker curl -sSL https://get.docker.com/ | sh 安装完成后,通过如下命令启动Docker的守护进程, ...

  7. wordpress 自定义路由及展示页

    wordpress 自定义路由及展示页 注册domain/test这个路由 wordpress 有重写url的方法,叫 add_rewrite_rule().在function.php中加入如下代码段 ...

  8. spring boot 项目从配置文件中读取maven 的pom.xml 文件标签的内容。

    需求: 将pom.xml 文件中的版本号读取到配置文件并打印到日志中. 第一步: 在pom.xml 中添加以下标签. 第二步: 将version 标签的值读取到配置文件中 这里使用 @@  而不是  ...

  9. hdu1722 切蛋糕

    题意:CakeTime Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Subm ...

  10. UVA11100旅行(大包装小包,问最少多少个包)

    题意:        有n个包裹,每个包裹的大小都给出了,然后小的包裹可以装到大的包裹里,问最少装成多少个包裹,装成最小的包裹后还有一个限制就是让包裹数最多的那个包裹最少,就是说尽量都平均分,比如有6 ...