防止 USB 備份磁碟機在安裝時休眠?

防止 USB 備份磁碟機在安裝時休眠?

每隔幾天,我們對外部 USB 硬碟的備份就會在運行 CentOS 6.4 64 位元的 hp DL380 G5 伺服器上失敗,這似乎是隨機的。如果我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 硬碟。

那我該如何告訴它保持清醒呢?

答案1

如果這個 hw poweroff 是 Linux 核心的正常功能,那麼它就會正確處理它。不,我認為這是惠普硬體帶來的一個美妙的驚喜。

我建議一個簡單的解決方法。放入crontab:

* * * * * dd if=/dev/sda of=/dev/null bs=512 count=1

這將每分鐘讀入隨身碟的分區表。它不會縮短隨身碟的使用壽命,因為它只會對其進行讀取操作,但會阻止其睡眠模式開啟。

在我的系統中我從未處理過這樣的問題。如果安裝了隨身碟,它就安裝了,如果我忘記了它並在兩週後嘗試使用它的分區,它就可以打開,沒有任何內核警告。

答案2

也許防止硬碟睡眠和韌體快取的最佳方法是讀取磁碟的隨機磁區:

* * * * * bash -c 'dd if=/dev/sda of=/dev/null count=1 skip=$RANDOM'

它對我來說效果很好。

相關內容