【发布时间】:2012-04-16 06:25:48
【问题描述】:
我想经常(每 30 秒)检查一下辅助(sdb)硬盘是否出现故障。这样做的最佳方式是什么。我应该通过简单地查看 /dev/sdb 是否存在来检查,还是有更好的方法? 另外我想从辅助硬盘驱动器检查主驱动器是否失败,如果是,我想执行重启命令。
目前我正在考虑做
为了检查辅助硬盘驱动器是否发生故障,我不断在 while 循环中执行此操作
if [ -e /dev/sda ];
then
echo "Secondary Hard drive is connected"
sleep 30s
else
echo "Secondary Hard drive died"
fi
为了检查主硬盘驱动器是否出现故障,我不断地在 while 循环中执行此操作
if [ -e /dev/sda ];
then
echo "Hard drive is connected"
sleep 30s
else
echo "Hard drive died"
reboot
fi
我不知道如何模拟硬盘故障,但我想就如何做到这一点以及代码是否有效的输入和/或建议。 提前感谢任何人的帮助:)
【问题讨论】:
-
只是好奇:你用你的辅助硬盘做什么?
-
一个 cron 作业会比在循环中运行代码更有效率,不是吗?
-
您可能需要考虑这一点:硬盘驱动器故障可能并不总是对应于从
/dev消失的设备文件 -
@ArjunShankar 我只是要以非常高的频率将大量数据写入硬盘驱动器,并想看看何时发生故障,以及何时发生故障我希望得到通知其中。硬盘是 sdd,空间很小(10MB)。只是我正在尝试的一个有趣的项目,并希望找到一种方法来检测硬盘驱动器故障。
标签: linux bash unix hard-drive