shell脚本一天一练----检测磁盘读写正常与否
#!/bin/bash
# *************************************
# * 功能: 检测磁盘读写正常与否
# * 作者: 刘丹玉
# * 联系: v649352141@163.com
# * 版本: 2025-04-30
# *************************************
# 需求
# 写一个检测脚本,用来检测本机所有磁盘分区读写是否都正常
# 提示:可以遍历所有挂载点,然后新建一个测试文件
# 然后再删除测试文件,如果可以正常新建和删除,那说明该分区没问题
for mount_p in $(df | sed '1d' | grep -v 'tmpfs' | awk '{print $NF}')
do
# 创建测试文件,并删除,从而确定该磁盘分区是否有问题
dd if=/dev/zero of=$mount_p/testfile bs=1 count=10 >/dev/null 2>&1 && rm -f $mount_p/testfile
if [ $? -ne 0 ]
then
echo "$mount_p 读写有问题"
else
echo "$mount_p 读写正常"
fi
done
### 关键知识点总结:
# 1) &&连接符表示当前面的命令执行成功才会执行后面的命令
# 在本例中,只有两条命令都执行成功了返回值才是0
# 否则任何一条命令执行出错,返回值都为非0
# 2) 写脚本的过程中,可以一边在命令行中运行命令 调试 一般写脚本
# 3) shell脚本里的sed、grep、awk 无处不在,所以用户这三个工具也是关键
[root@Rocky9-12 ~]# bash 0430-02.sh
/ 读写正常
/boot 读写正常
/home 读写正常
endl
评论