shell应用之cobbler批量部署
如果使用的是原始源,可直接使用该脚本,如果是用的其它源且有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批量部署的更多相关文章
- 使用Cobbler批量部署Linux和Windows:Cobbler服务端部署(一)
本文记录了我使用Cobbler批量安装部署Linux和Windows系统的过程,文章主要分为三部分:Cobbler服务端的安装配置.Linux发行版CentOS和Ubuntu的自动安装部署.Windo ...
- (转)使用Cobbler批量部署Linux和Windows:Cobbler服务端部署(一)
原文:http://www.cnblogs.com/pluse/p/8316914.html http://blog.51cto.com/dreamway/1166589---------Cobble ...
- Cobbler批量部署CentOS
简介 Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows.该工具使用python开发,小巧轻便(才15k行python代码),使用简单的命令即可完成PXE ...
- 使用Cobbler批量部署Linux和Windows:CentOS/Ubuntu批量安装(二)
通过前面服务端的部署,已经配置好了 Cobbler Server 端,接下来开始进行 CentOS/Ubuntu 的批量安装,在进行 CentOS/Ubuntu 批量安装时,也需要通过Cobbler来 ...
- 使用Cobbler批量部署Linux和Windows:Windows系统批量安装(三)
Tutorial: Installing Windows with cobbler (cobbler安装Windows) Windows系统的自动安装需要用到Win PE工具.流程如下: 定制Win ...
- Linux服务之cobbler批量部署篇
一.Cobbler简介:Cobbler通过将设置和管理一个安装服务器所涉及的任务集中在一起,从而简化了系统配置.相当于Cobbler封装了DHCP.TFTP.XINTED等服务,结合了PXE.kick ...
- shell基础之pxe批量部署
通过安装及配置DHCP,tftp-server,xinetd,httpd,syslinux来实现批量安装Linux系统 #!/bin/bash #检查环境 se_state=`getenforce` ...
- Cobbler自动化批量部署CentOS6.5系统
Cobbler作为一个预备工具,使批量部署Red Hat/Centos/Fedora系统更容易,同时也支持Suse和Debian系统的部署. 它提供以下服务集成: * PXE服务支持 * DHCP服务 ...
- centos7使用cobbler(2.8)批量部署操作系统之一
一. 批量部署操作系统的前提 要想批量部署操作系统,得具备以下条件: 客户机支持pxe网络引导 服务器端和客户端建立网络通信(DHCP) 服务器端要有可供客户机开机引导的引导文件 服务器端的可引 ...
随机推荐
- 万字长文,带你彻底理解EF Core5的运行机制,让你成为团队中的EF Core专家
在EF Core 5中,有很多方式可以窥察工作流程中发生的事情,并与该信息进行交互.这些功能点包括日志记录,拦截,事件处理程序和一些超酷的最新出现的调试功能.EF团队甚至从Entity Framewo ...
- Java(215-231)【Object类、常用API】
1.Object类的toString方法 java.lang.Object 类 Object 是类层次结构的根(父)类. 每个类(Person,Student...)都使用 Object 作为超(父) ...
- Spring Security框架中踢人下线技术探索
1.背景 在某次项目的开发中,使用到了Spring Security权限框架进行后端权限开发的权限校验,底层集成Spring Session组件,非常方便的集成Redis进行分布式Session的会话 ...
- IdentityServer4+OAuth2.0+OpenId Connect 详解
一 Oauth 2.0 1 定义 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用. ...
- 07- Linux常用命令
cat命令 作用:将文件内容作为标准输出打印到终端. 格式:cat 文件名1 文件名2 例如: cat more命令: 作用:分页显示文本文件的内容 格式:more 文件名 实例:more he ...
- Windows API初练手 -- 疯狂写文件代码
警告:恶作剧软件,慎用!仅供初学者研究代码所用!!! 提示:默认文件创建目录在"D:\test",如果需要使用的话请自行更改目录. 1. Windows API 版本 (调用系统函 ...
- hdu5251最小矩形覆盖
题意(中问题直接粘吧)矩形面积 Problem Description 小度熊有一个桌面,小度熊剪了很多矩形放在桌面上,小度熊想知道能把这些矩形包围起来的面积最小的矩形的面积是多少. Input ...
- Win64 驱动内核编程-28.枚举消息钩子
枚举消息钩子 简单粘贴点百度的解释,科普下消息钩子: 钩子是WINDOWS中消息处理机制的一个要点,通过安装各种钩子,应用程序能够设置相应的子例程来监视系统里的消息传递以及在这些消息到达目标窗口程序之 ...
- ColyseusJS 轻量级多人游戏服务器开发框架 - 中文手册(下)
快速上手多人游戏服务器开发.后续会基于 Google Agones,更新相关 K8S 运维.大规模快速扩展专用游戏服务器的文章.拥抱️原生 Cloud-Native! 系列 ColyseusJS 轻量 ...
- Thinking in UML 笔记(一) -- 面向对象
一.UML 中最重要的就是面向对象. 面向对象的认识论可以构建更为复杂的系统来解释复杂的世界. 1. 面向过程,一切都是相互紧密地联系在一起,互相作用,互相影响. 2.面向对象, 世界是分割开的,只有 ...