我现在想要清除一台主机上的k8s相关的组件,但是发现有很多被挂载的目录无法删除

每个目录的结构都很麻烦(十来层目录),必须要先umount 后才能删除,我们必须先获取他们的路径

vi ss.sh

#添加
#!/usr/bin/bash
a_root="$1"

for sub in $(ls $a_root); do
        if [ -d ${a_root}/${sub} ]; then
                ./ss.sh ${a_root}/${sub}
                echo "${a_root}/${sub}"
        else
                echo ${a_root}/${sub}
        fi

done

 授权

chmod +x ss.sh

创建测试目录

 mkdir -p /tmp/linshi/{test1,test2,test3}/{test1,test2,test3}/{test1,test2,test3}

 测试

[root@k8s-master01 ~]# sh  ss.sh /tmp/linshi
/tmp/linshi/test1/test1/test1
/tmp/linshi/test1/test1/test2
/tmp/linshi/test1/test1/test3
/tmp/linshi/test1/test1
/tmp/linshi/test1/test2/test1
/tmp/linshi/test1/test2/test2
/tmp/linshi/test1/test2/test3
/tmp/linshi/test1/test2
/tmp/linshi/test1/test3/test1
/tmp/linshi/test1/test3/test2
/tmp/linshi/test1/test3/test3
/tmp/linshi/test1/test3
/tmp/linshi/test1
/tmp/linshi/test2/test1/test1
/tmp/linshi/test2/test1/test2
/tmp/linshi/test2/test1/test3
/tmp/linshi/test2/test1
/tmp/linshi/test2/test2/test1
/tmp/linshi/test2/test2/test2
/tmp/linshi/test2/test2/test3
/tmp/linshi/test2/test2
/tmp/linshi/test2/test3/test1
/tmp/linshi/test2/test3/test2
/tmp/linshi/test2/test3/test3
/tmp/linshi/test2/test3
/tmp/linshi/test2
/tmp/linshi/test3/test1/test1
/tmp/linshi/test3/test1/test2
/tmp/linshi/test3/test1/test3
/tmp/linshi/test3/test1
/tmp/linshi/test3/test2/test1
/tmp/linshi/test3/test2/test2
/tmp/linshi/test3/test2/test3
/tmp/linshi/test3/test2
/tmp/linshi/test3/test3/test1
/tmp/linshi/test3/test3/test2
/tmp/linshi/test3/test3/test3
/tmp/linshi/test3/test3
/tmp/linshi/test3

可以看到,已经检索到所有的目录

#将路径导出卸载即可

#导出路径
sh ss.sh /tmp/linshi > 1.txt

#卸载
for i  in $(cat 1.txt); do umount $i ;done

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐