服务器初始化脚本

1 磁盘
购买云磁盘,有的时候是没有挂载的,还需要自己去根据LVM相关命令去执行,如果买的服务器比较多,还得每一台都弄,所以就自己写shell脚本,看看常规的命令,也不是很复杂。
1.1 只有1个数据盘
多盘的应该是用一个循环来实现,但因为资源受限,只有1个数据盘的脚本如下:
终于搞明白grep、awk以及变量如何使用。

init_disk() {
cat << EOF
+--------------------------------------------------------------------+
+------初始化磁盘分区 -----+
+--------------------------------------------------------------------+
EOF
if [ `rpm -qa |grep lvm2 | wc -l` -lt 1 ] ;then
    yum install lvm2 -y
fi

disk_name=$(fdisk -l | grep /dev/vd | grep -v vda | awk '{print$2}' |awk -F: '{print$1}')
# 创建物理卷
pvcreate $disk_name
# 卷组
vgcreate vgdata $disk_name
# 创建逻辑卷
disk_size=$(vgdisplay | grep "Total PE" | awk '{print $3*4/1024}')
lvcreate -L ${disk_size}G -n lvData vgdata
# 创建文件系统
mkfs.ext4 /dev/vgdata/lvData
# 创建挂载目录
mkdir /appdata
# 将文件系统挂载到目录下
mount /dev/vgdata/lvData /appdata
# 设置系统启动时自动挂载
echo "/dev/vgdata/lvData /appdata ext4 defaults 0 0" >> /etc/fstab
}

2 更改host
下面的做法有些缺陷,因为一般情况新的机器最后一行是可以删除掉的。
这里hostnamectl set-hostname wd2.test.com.cn,每台机器的hostname我没想好怎么变得也自动化,是不是传个参数进去呢?

init_hosts() {
cat << EOF
+--------------------------------------------------------------------+
+------初始化hosts配置 -----+
+--------------------------------------------------------------------+
EOF
# 删除末行
sed -i '$d' /etc/hosts

# 追加下面的配置到hosts中
cat >> /etc/hosts << EOF
10.128.4.164 wd1.test.com.cn testdev-0001
EOF

}

3 更改华为云的yum源

init_yum() {
cat << EOF
+--------------------------------------------------------------------+
+------将服务器的yum源更改为华为云的 -----+
+--------------------------------------------------------------------+
EOF
echo "step 1/5 清理已经存在的yum源"
cd /etc/yum.repos.d && rm -rf *

echo "step 2/5 下载华为mirrors"
wget -O /etc/yum.repos.d/CentOS-Base.repo   https://repo.huaweicloud.com/repository/conf/CentOS-7-reg.repo

echo "step 3/5 新增epel源"
yum remove  -y  epel-release
yum install -y  https://repo.huaweicloud.com/epel/epel-release-latest-7.noarch.rpm
cd /etc/yum.repos.d/
rm -rf epel-testing.repo

echo "step 4/5 修改源"
sed -i "s/#baseurl/baseurl/g" /etc/yum.repos.d/epel.repo
sed -i "s/mirrorlist/#mirrorlist/g" /etc/yum.repos.d/epel.repo
sed -i "s@http://download.fedoraproject.org/pub@https://repo.huaweicloud.com@g" /etc/yum.repos.d/epel.repo

echo "step 5/5 生成缓存并测试源"
yum clean all
yum makecache
yum repolist all

echo "yum 源修改完毕!"
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

warrah

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值