前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >cobbler 一键装机(记得上传cobbler压缩包和镜像文件)

cobbler 一键装机(记得上传cobbler压缩包和镜像文件)

原创
作者头像
用户10048459
修改2022-09-25 10:20:21
7910
修改2022-09-25 10:20:21
举报
文章被收录于专栏:执笔绘倾城
代码语言:javascript
复制
#需手动上传cobbler压缩包--loader文件至/root/目录
#需要手动上传centos6.8镜像
#手动添加100G硬盘并创建两个分区,保证有空间上传镜像文件
#执行脚本需要手动输入cobbler服务器IP地址和网关地址

#!/bin/bash

read -p "input IPADDR:" SIP
read -p "input GATEWAY:" GW

systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

#配置基础网络yum源和epel扩展yum源
mv /etc/yum.repos.d/CentOS-Media.repo /etc/yum.repos.d/back/
mv /etc/yum.repos.d/back/CentOS-Base.repo /etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all
yum makecache
yum -y install epel-release

yum -y install gdisk
#磁盘分两个区,各50G
#gdisk /dev/sdb

#创建挂载点,挂载
mkfs.xfs /dev/sdb1
mkfs.xfs /dev/sdb2
mkdir /iso
mkdir /var/www
echo "/dev/sdb1    /iso        xfs    defaults    0 0" >> /etc/fstab
echo "/dev/sdb2    /var/www        xfs    defaults    0 0" >> /etc/fstab
mount -a

#安装cobbler和相关软件
yum -y install cobbler cobbler-web tftp-server dhcp httpd xinetd
systemctl start httpd cobblerd
systemctl enable httpd cobblerd

#检查cobbler配置,根据提示完成修改
#问题一
sed -i "/allow_dynamic_settings/s/0/1/g" /etc/cobbler/settings
systemctl restart cobblerd
#问题二
sed -i "390s/127.0.0.1/$SIP/g" /etc/cobbler/settings
sed -i "278s/127.0.0.1/$SIP/g" /etc/cobbler/settings
sed -i /pxe_just_once/s/0/1/g /etc/cobbler/settings
#问题三
sed -i "/disable/s/yes/no/g" /etc/xinetd.d/tftp
#问题四
yum -y install grub2-efi-x64-modules grub2-pc-modules
unzip /root/cobbler-loaders.zip
cd /var/lib/cobbler/loaders/
cp -a /root/cobbler-loaders/var/lib/cobbler/loaders/* ./
#问题五
systemctl enable rsyncd
systemctl start rsyncd
#问题六:可以忽略
#问题七
yum -y install pykickstart
#问题八
openssl passwd -1 -salt 'root' '123456'
echo "default_password_crypted: \"\$1\$root\$1$root$j0bp.KLPyr.u9kgQ428D10\"" >> /etc/cobbler/settings
#问题九
yum -y install fence-agents
systemctl restart cobblerd
cobbler check


# 修改cobbler配置文件,同步cobbler-dhcp
sed -i 's/manage_dhcp: 0/manage_dhcp: 1/g' /etc/cobbler/settings

sed -i "/option routers/s/192.168.1.5/$GW/g" /etc/cobbler/dhcp.template
sed -i '/option domain-name-servers/s/192.168.1.1/8.8.8.8/g' /etc/cobbler/dhcp.template
echo $SIP >> /tmp/ip.txt
c=$( cut -d "." -f 3 /tmp/ip.txt )
sed -i "/subnet/s/192.168.1/192.168.$c/g" /etc/cobbler/dhcp.template
sed -i "/range dynamic-bootp/s/192.168.1/192.168.$c/g" /etc/cobbler/dhcp.template
systemctl restart cobblerd
cobbler sync
cobbler sync

systemctl restart httpd rsyncd dhcpd xinetd cobblerd tftp.socket tftp
systemctl enable httpd rsyncd dhcpd xinetd cobblerd tftp.socket tftp

mkdir /iso/centos7.6/
mount -r /dev/sr0 /iso/centos7.6/
#导入镜像文件
cobbler import --name="CentOS-7.6-x86_64" --path=/iso/centos7.6

mkdir /iso/centos6.8
mount -o loop /root/CentOS-6.8-x86_64-bin-DVD1.iso /iso/centos6.8/
#导入镜像文件
cobbler import --name="CentOS-6.8-x86_64" --path=/iso/centos6.8
sleep 2
cobbler profile list

sed -i '/ONTIMEOUT/ s/local/CentOS-7.6-x86_64/g' /var/lib/tftpboot/pxelinux.cfg/default
#centos7模板文件
cat <<EOF> /var/lib/cobbler/kickstarts/centos7.cfg
#version=DEVEL
auth --enableshadow --passalgo=sha512
url --url=http://$SIP/cobbler/ks_mirror/CentOS-7.6-x86_64/
graphical
firstboot --enable
ignoredisk --only-use=sda
keyboard --vckeymap=us --xlayouts='us'
lang en_US.UTF-8
network --bootproto=dhcp --device=ens33 --onboot=on --ipv6=auto --no-activate
network --hostname=localhost.localdomain
rootpw --iscrypted \$6\$LO0oxqvmJfQOFW7p\$cgV.4sVUp7UgEDSwUToHSIhRCmX4ETF2S/CoRmhnf.NHkCJvS1.Or8HENDSPkCrfnCgUlnVdxNWR0iK20GZF70
firewall --disabled
selinux --disabled
services --disabled="chronyd"
timezone Asia/Shanghai --isUtc --nontp
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
clearpart --none --initlabel
part /boot --fstype="xfs" --ondisk=sda --size=1024
part swap --fstype="swap" --ondisk=sda --size=2048
part / --fstype="xfs" --ondisk=sda --grow --size=1
%packages
@^web-server-environment
@base
@core
@web-server
kexec-tools
%end
reboot
EOF


cobbler profile report --name=CentOS-7.6-x86_64
cobbler profile edit --name=CentOS-7.6-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos7.cfg
sed -i '/ONTIMEOUT/ s/local/CentOS-7.6-x86_64/g' /var/lib/tftpboot/pxelinux.cfg/default



#centos6装机模板
cat <<EOF> /var/lib/cobbler/kickstarts/centos6.cfg
#centos 6.8 kickstart
firewall --disabled
text
install
url --url="http://$SIP/cobbler/ks_mirror/CentOS-6.8-x86_64/"
lang en_US.UTF-8
keyboard us
rootpw --iscrypted "\$1\$AXNLrDmN\$RkF5m37jzZjZ1fAYo7B2P0"
auth  --useshadow  --passalgo=sha512
firstboot --enable
selinux --disabled
timezone  Asia/Shanghai
network  --bootproto=dhcp --device=eth0 --onboot=on
bootloader --location=mbr
zerombr
clearpart --all --initlabel 
part /boot --fstype="ext4" --ondisk=sda --size=1024
part swap --fstype="swap" --ondisk=sda --size=2048
part / --fstype="ext4" --ondisk=sda --grow --size=1

%packages
@basic-desktop
@desktop-debugging
@desktop-platform
@fonts
@general-desktop
@graphical-admin-tools
@input-methods
@kde-desktop
@legacy-x
@remote-desktop-clients
@x11

%end
reboot
EOF

cobbler profile report --name=CentOS-6.8-x86_64
cobbler profile edit --name=CentOS-6.8-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos6.cfg
sed -i '/ONTIMEOUT/ s/local/CentOS-7.6-x86_64/g' /var/lib/tftpboot/pxelinux.cfg/default

echo "列出可安装镜像"
cobbler profile list

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档