每隔几天,似乎是随机的,我们在运行 CentOS 6.4 64 位的 hp DL380 G5 服务器上备份到外部 USB 硬盘失败。如果我cd /mnt/backup
和运行ls
它抱怨ls: reading directory .: Input/output error
,但mount -l
报告/dev/sda1 on /mnt/backup type ext4 (rw)
。当我派人到现场检查时,他们总是报告说外置驱动器上的灯正在缓慢闪烁,这对于睡眠状态显然是正常的。但是在 rsnapshot 运行之前我不会要求它进入睡眠状态,但是 rsnapshot 会导致我的脚本在此之前失败,甚至有机会发生。是不是想省电?我怎样才能让它不这样做?
rsnapshot 抱怨:
/usr/bin/rsnapshot daily: ERROR: /mnt/backup/.snapshots does not exist.
当然,如果现场人员拔掉并重新插入驱动器,我可以重新安装它,并且.snapshots
肯定存在并且 rsnapshot 将运行而不会出错。有一段时间,直到下一次随机发生,即。顺便说一句,这是一个相当新的 WD Passport 驱动器。
那么我该如何让它保持清醒呢?
也许防止 hd sleep 和固件缓存的最好方法是读取磁盘的随机扇区:
它对我来说很好。
如果这个 hw poweroff 是 linux 内核的正常功能,它可以正确处理它。不,我认为惠普硬件给我带来了惊喜。
我建议一个简单的解决方法。放入crontab:
这将在每分钟读取 pendrive 的分区表。它不会降低 pendrive 的寿命,因为它只对其进行读取操作,但会阻止其睡眠模式打开。
在我的系统中,我从未处理过这样的问题。如果挂载了一个 pendrive,它就挂载了,如果我忘记了它并在 2 周后尝试使用它的分区,它能够被打开,而没有一个内核警告。