shell 脚本小记,检测磁盘-进行分区挂载

配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
cat deploy
 
 
## OS 选择操作系统版本: centos 或者  kylin 或者  openeuler
# 只支持 centos-x86    kylin-arm   kylin-amd  openeuler-arm
OS="centos"
 
## harbor  选择harbor仓库,设置账号以及密码
harbor=""
harbor_user=""
harbor_passwd=""
 
## 跳板机IP
http=""
 
## svc网段 pod网段 域名后缀
svc_sub=""
pod_sub=""
clu_na=""
 
## node ip
nodeip=(
 
)
 
 
#master 当node进行调度开关
switch=yes
 
## 密码
passwd=""
 
 
##给 /export  挂载使用
disk="vdb"

脚本主机 main

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/bin/bash
source ./deploy
sss="$PWD/sshpass-centos-amd64  -p  "$passwd"   ssh -o StrictHostKeyChecking=no"
nu=0
failedip=""
for i in  ${masterip[@]}
do
        $sss $i  "ls /dev/$disk &>/dev/null "
        if [ $? -ne 0 ];then
                sta=fail
                failedip="$failedip $i"
                nu=1
        else
                sta=success
        fi
done
if [ $nu -eq 1 ];then
 
echo -e "
检测机器磁盘 $disk 不存在,退出
机器信息$failedip
"
exit
else
echo -e "
检测机器磁盘 $disk 存在,进行分区操作"
fi
 
tmpdir=$(mktemp -d /tmp/check_disk.XXXXXX)
trap 'rm -rf "${tmpdir}"' EXIT
 
for p in ${nodeip[@]}
do
        status=$($sss $p   "blkid /dev/$disk &>/dev/null " && echo $? )
                if [ ! -z $status ];then
                        echo "请检查 $p 磁盘已有分区,退出"
                        failedip="$failedip $p"
                        continue
                else
                        $sss $p "parted -s /dev/$disk mklabel gpt mkpart 1 xfs 1 100%"
                        echo "$p 磁盘分区完成"
                        $sss $p "mkdir /export/ &>/dev/null"
                        blk=$($sss $p  "lsblk /dev/$disk  ")
                        for x in  ${blk[@]}
                        do
                                echo $x >> $tmpdir/test
                        done
                        part=$(cat $tmpdir/test | grep $disk | awk  -F \└─ '/└─/{print $2}')
 
                        $sss $p "mkfs.xfs /dev/$part &>/dev/null"
                        uuid=$($sss $p "blkid /dev/$part")
                        UUID=$(echo $uuid | awk '{print $2}')
                        $sss $p "echo $UUID /export/  xfs defaults 0 0 >> /etc/fstab"
                        $sss $p "mount -a"
                fi
 
done

 备注: sshpaas 使用centos x86 版本,需要自行下载安装,可以使用二进制程序,也可以通过yum安装,源码包安装

 

posted @   崛起的麋鹿  阅读(54)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端
点击右上角即可分享
微信分享提示