web-dev-qa-db-ja.com

ハードディスクが自動的にスタンバイにならない

30分または60分後に自動的にスタンバイになるハードドライブがあります。

私が試しました(テストには3分):

# hdparm -S 36 /dev/sda

/dev/sda:
 setting standby to 36 (3 minutes)

また、5分以上アクセスがない場合でも機能しませんでした。データにアクセスするプロセスを考えたので、テストしました

# hdparm -y /dev/sda

/dev/sda:
 issuing standby command

ドライブはスタンバイ状態になり、スリープ状態を維持しました。

# hdparm -C /dev/sda;date

/dev/sda:
 drive state is:  standby

マウントポイントのファイルに触れると、予想通りに目が覚めました。

自動中断が機能しないのはなぜですか?私が理解している限り、アクセスがない限り、OSから独立したハードドライブをオフにする必要さえあります。

8
allo

実際の問題はsmartdで、デバイスがスタンバイモードの場合でも定期的に値をチェックしていました。

3
allo

一部のドライブは、コマンドが通過しても、この機能を実装していないことに注意してください。 hdparm -B 127 /dev/sdaを使用して、高度な電源管理レベルを127以下に下げる必要がある場合もあります。 manページから:

-B Advanced Power Management機能の取得/設定...値1〜127(スピンダウンを許可)、および値128〜254(スピンダウンを許可しない)。

すべてが失敗した場合は、/proc/diskstatsまたは/sys/block/sda/statをポーリングしてデバイスの読み取り/書き込みの数を調べ、ドライブが数分間変化しない場合は明示的にドライブをスタンバイ状態にする小さなスクリプトを書くことができます。 hd-idle ユーティリティを参照してください。

5
meuh