cobbler是一个可以实现批量安装系统的Linux应用程序。它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本。

一、系统环境准备及其下载cobbler

1、系统环境
  开启两个网卡。一个仅主机模式,一个桥接模式,主机模式对内提供cobbler服务。
  内网IP:192.168.182.128/24 #用来对内通信,提供cobbler服务
  外网IP:192.168.4.190/24 #连接外网
2、关闭安全服务
  #关闭防火墙
  #关闭selinux
3、下载cobbler及其所需服务程序

yum安装cobbler需要使用下面两个源,大家可以复制下面的代码到自己的yum仓库保存即可

[epel]
name=epel
enabled=
gpgcheck=
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/ [centos]
name=centos base
enabled=
gpgcheck=
baseurl=http://mirrors.163.com/centos/7/os/x86_64/
# yum clean all #清理缓存
# yum makecache #建立缓存
# yum install cobbler dhcp tftp-server xinetd syslinux httpd -y

syslinux: 提供pxelinux.0这个文件 ,pxelinux.0引导文件引导vmlinux和initrd两个启动文件

二、配置相关服务

第一步:配置DHCP服务

# cat /etc/dhcp/dhcpd.conf
subnet 192.168.182.0 netmask 255.255.255.0 {
range 192.168.182.150 192.168.182.155;
default-lease-time ;
max-lease-time ;
filename "pxelinux.0";
}

# systemctl restart dhcpd

# systemctl enable dhcpd #(开机自启)

第二步:配置tftp
# cat /etc/xinetd.d/tftp

service tftp
{
disable = no #yes 改为no
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -B -v -s /var/lib/tftpboot
per_source =
cps =
flags = IPv4
}

第三步:启动cobbler

# systemctl start cobblerd
第四步:启动httpd
# systemctl restart httpd
第五步:检查cobbler配置
# cobbler check

同步的时候可能会报8或者9个问题,对于这些问题的解决方法如下,个别问题可以不影响cobbleer使用

修改配置文件/etc/cobbler/settings
问题一:
  cobbler文件默认是127.0.0.1本地回环地址,需要更改为提供cobbler服务的ip地址 192.168.182.128,在384行

server: 192.168.182.128

问题二:
  netx_server也是默认本地127.0.0.1回环地址,需要修改为提供cobbler服务的ip地址 192.163.182,128,在272行出

next_server: 192.168.182.128

问题三:
可以忽略

问题四:
启动rsync即可
# systemctl restart rsyncd
# systemctl enable rsyncd

问题五:
可以忽略
问题六:
更改密码
# openssl passwd -1 -salt "123" "123456"
$1$123$7mft0jKnzzvAdU4t0unTG1

并把新生成的加密数据填写进/etc/cobbler/settings
default_password_crypted: "$1$123$7mft0jKnzzvAdU4t0unTG1"

问题七:
  可以忽略

还有个别问题只需要执行报错内容引号里面的命令即可解决

以上问题解决之后,需要同步和重启

# systemctl restart cobblerd
# cobbler sync

再次检查是否已经更改完成
# cobbler check

第六步:挂载光盘并进行数据导入
1、挂载光盘
# mount /dev/cdrom /mnt/
2、数据导入(需要一些时间)
cobbler import --path=/mnt --name="centos7.5"
3、查看distro
# cobbler distro list
4、查看profile
# cobbler profile list
distro : 发行版, 就是我们安装什么版本的linux操作系统的名称 一会我们会导入一个 distro.
profile : 类似于一个 配置文件,类似于你的 bash_profile, 里面包含你可以添加 kernel 参数,对应的kickstart 文件 以及 此profile 对应的 distro 等等.
第七步:准备kickstart文件
在root目录下找到ks文件,并移动到/var/lib/cobbler/kickstarts/到目录下改名为ks.cfg
1、# cp anaconda-ks.cfg /var/lib/cobbler/kickstarts/ks.cfg/

2、# vim /var/lib/cobbler/kickstarts/ks.cfg

#只需要更改一行内容

#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
url --url=http://192.168.83.133/cobbler/ks_mirror/centos7.5/ #这里需要更改为repodata所在的http地址
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=cn --xlayouts='cn'
# System language
lang zh_CN.UTF- # Network information
network --bootproto=dhcp --device=ens33 --onboot=off --ipv6=auto --no-activate
network --hostname=localhost.localdomain

第八步:自定义profile
# cobbler profile add --distro=centos7.0-x86_64 --name=centos7.0_ken --kickstart=/var/lib/cobbler/kickstarts/ks.cfg
# cobbler sync进行同步

第九步:查看profile
# cobbler profile list
第十步:删除不包含ks文件的profile(也可以不删除)
# cobbler profile remove --name=centos7.5-x86_64
# cobbler profile list

三、cobbler自动化安装测试

新建一个虚拟机,需要和cobbler服务器所在同一个虚拟网络中即与我们上面设置的cobbler服务器的主机模式。内存需要3个G以上。

注:如果需要安装不同版本的系统只需要重新插入其他版本的镜像并进行挂载,即从第六步重新开始执行以下的操作,只是ks文件的内容不同需要重新更改ks文件

cobbler一键批量安装系统的更多相关文章

  1. 基于CentOS7系统部署cobbler批量安装系统(week3_day5_part1)-技术流ken

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cobbler ...

  2. 末学者笔记--Centos7系统部署cobbler批量安装系统

      [前言]: cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cob ...

  3. cobbler批量安装系统使用详解-技术流ken

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 系统环境准备及其下载cobbler ...

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

    说明: Cobbler服务器系统:CentOS 5.10 64位 IP地址:192.168.21.128 需要安装部署的Linux系统: eth0(第一块网卡,用于外网)IP地址段:192.168.2 ...

  5. 基于Centos7系统部署cobbler批量安装系统

    前言 cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本 系统环境的准备及下载cobbler 一 ...

  6. cobbler批量安装系统

    cobbler是一个可以实现批量安装系统的Linux应用程序.它有别于pxe+kickstart,cobbler可以实现同个服务器批量安装不同操作系统版本. 1.系统环境准备及其下载cobbler 1 ...

  7. kvm cobbler无人值守批量安装操作系统

    kvm cobbler无人值守批量安装操作系统 cobbler:一个自动网络安装系统的工具,集成PEX.dhcp.dns.tftpd.sync等服务.可以供大家管理安装操作系统 kvm:Linux系统 ...

  8. pxe+kickstart自动化批量安装系统详解-技术流ken

    前言 pxe+kickstart是一款可以实现自动化批量安装系统的服务,比较经典,下面将详细介绍此服务的安装和使用. 系统环境准备 系统版本:CentOS release 6.7 (Final) 内网 ...

  9. (转)Cobbler无人值守批量安装Linux系统

    本文目录: 1.1 pxe安装系统 1.2 cobbler基本介绍 1.3 安装和配置cobbler 1.3.1 安装cobbler 1.3.2 配置dhcp和tftp 1.4 cobbler从本地光 ...

随机推荐

  1. [Android] Android 手机下 仿 微信 客户端 界面 -- 微聊

    Android 手机下 仿 微信 客户端 界面 -- 微聊 (包括聊天列表 + 聊天对话页 + 朋友圈列表页 + 我的/发现 列表页) 项目演示: 功能说明: 1)底部标签切换 (TabHost + ...

  2. LinkedHashMap源码分析及实现LRU

    概述 从名字上看LinkedHashMap相比于HashMap,显然多了链表的实现.从功能上看,LinkedHashMap有序,HashMap无序.这里的顺序指的是添加顺序或者访问顺序. 基本使用 @ ...

  3. meterpreter基础命令大全

    meterpreter meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用.为后渗透提供了很多便捷之处 基础命令 我们进入meterpreter之后,键入 ...

  4. python和Java的几种容器比较

    python里面有几种常用的容器用来存放数据 1.list 列表,在python中没有数据类型,所以可以在列表中存放各种类型的数据,比如把Java里面的整型和字符串放在一个容器里面如下所示 list ...

  5. P2P互联网金融企业的四大转型方向

    1.按照国标做成百分百的信息中介平台.这个定位太低,无利可图,如果政策导向真按着这个路径走,未来可能只剩下不到50家平台; 2.转型成为带“民营银行”属性的平台.这还得国家网开一面,学习英国模式,允许 ...

  6. Javamail pop3连接QQ邮箱遇到最深的坑

    在使用pop3邮箱连接QQ邮箱接受邮件的时候遇到如下错误 Login fail. A secure connection is requiered(such as ssl) 此时按照错误提示添加如下配 ...

  7. win10 64位Python 3.6.2 + Django 环境安装

    一.安装Python3.6.2 1.下载安装包 https://www.python.org/downloads/release/python-362/ 2.一直下一步,记得到了这个界面全部勾选再下一 ...

  8. 项目Alpha冲刺(团队)-代码规范、冲刺任务与计划

    课程名称:软件工程1916|W(福州大学) 作业要求:项目Alpha冲刺(团队)-代码规范.冲刺任务与计划 团队名称:SkyReach 作业目标:确定团队项目的代码规范.冲刺任务与计划 代码规范:隐流 ...

  9. ABP学习之路--切换mysql数据库

    1.添加mysql相关引用 注意,使用最新版本会导数据迁移时出错 2.修改链接字符串: <add name="Default" connectionString=" ...

  10. java 生产者消费者简单实现demo

    第一种方式 使用BlockingQueue 阻塞队列 public class Threads { public static void main(String[] args) { final Arr ...