HDDをスタンバイ(スピンダウン)状態にして節電してみる。
今回は、HDD を自動的にスタンバイ状態(スピンダウン)にすることで、節電してみたいと思います。
スピンダウンとは、
文字通り 回転を落とす という意味です。
ハードディスクの場合、磁気ディスクを回転させて、そこにヘッド(あるいはヘッダ)をあててデータの読み書きを行います。
つまり、読み書きする際は、その磁気ディスクを回転させる必要がありますが、データの読み書きがしばらくない場合は、磁気ディスクを回転させていても意味がないので、
その間は、回転を落としたり停止させることで電気代を節約することができます。
この回転を落としたり停止させることを一般にディスク・スピンダウンと呼んでいます。
また、この状態を 寝ているような状態 という意味でスリープ状態とか、スタンバイ状態と言います。
hdparmコマンドでは、スリープ状態(停止状態)とスタンバイ状態(スピンダウン状態)を区別していますので、ここでは、スタンバイ状態で統一しておきます。
HDDをスタンバイ状態にして節電。
HDDをスタンバイ状態にするには、hdparm を使います。
以降に、簡単に解説してみます。
HDDの現在の状態を確認しておく
一応、hdparmの使い方も含めて HDDの現在の状態を確認しておきましょう。
$ hdparm /dev/sdb
/dev/sdb:
multcount = 16 (on)
IO_support = 1 (32-bit)
readonly = 0 (off)
readahead = 256 (on)
geometry = 364801/255/63, sectors = 5860533168, start = 0
$ hdparm -C /dev/sdb
/dev/sdb:
drive state is: active/idle
|
スピンダウンするタイムアウト時間を設定する
hdparm を使って、スピンダウンするタイムアウト時間を設定します。
この時間は、上記の 電源モード の アイドル(idle) 状態が ここで指定する時間の間、継続した場合に スピンダウン させ、スタンバイ状態へ移行するというものです。
$ hdparm -S 120 /dev/sdb
/dev/sdb:
setting standby to 120 (10 minutes)
|
一般的には、タイムアウト時間は 20分のようです。(Windowsのデフォルトの20分みたいです。)
使い方にもよりますが、どんなに短くても 10分程度ではないかと思います。ここでは、10分を指定してみました。
タイムアウト時間経過後、電源モード状況を確認する
先に確認したように 電源モード状況 を hdparm を使って確認します。
$ hdparm -C /dev/sdb
/dev/sdb:
drive state is: standby
|
上記のように、指定したタイムアウト時間経過後、standby となればOKです。
リブートしてもタイムアウト時間を設定する
hdparm を使って 先に設定した タイムアウト時間 は、システムのリブートで消えてしまいますので、システムリブート時にあらためて設定しなおす必要があります。
ここでは、rc.local に設定することで、リブート時も設定するようにします。
$ vi /etc/rc.local
...
/sbin/hdparm -S 120 /dev/sdb
...
|
本来なら、Ubuntu,Debianでは、/etc/
hdparm.conf ファイルを更新してリブートでも実行すれば、反映されるはず?なのですが、バグがあったらしいです。
現在?は、修正されたのか・・・文面を読むと 最新の 12.04 LTS には対応した?らしいことが書かれていますが、それ以外は不明です。
(
https://bugs.launchpad.net/ubuntu/+source/hdparm/+bug/595138 )
$ vi /etc/hdparm.conf
...
/dev/sdb {
spindown_time = 120
}
|
うまく動かない場合は、/etc/
rc.local への設定が無難かもしれません。
また、S.M.A.R.T.(smartd) を使っている場合は、S.M.A.R.T.(smartd) によって定期的にHDDへアクセスしたりしますので、そこを停止するように設定しておきます。
以下は、その例です。
$ vi /etc/smartd.conf
...
/dev/sdb -H -m root -n standby,q -s S/../.././01
...
|
上記の例では、以下のような設定となります。
毎日 1 時に、ヘルスチェックを含めてチェックするけど、スタンバイ状態時は 何もしない。問題あれば root宛てにメール送信する。
このように簡単にスタンバイ状態の設定ができます。GUIでの設定ですが、Widowsでも同じ機能はあります。
節電効果は、HDDの消費電力にもよりますが、色々な記事を見る限り 約10W程度は抑えられるようです。
ただ、やりすぎるとHDDの寿命を短くするといわれていますので、ほどほどにされていた方が良いと思います。
少なくとも10分以上のアクセスが無かった場合など、ある程度の時間設定が必要だと思いますし、
スタンバイ状態が平均で1時間以上になるぐらいの設定が求められるかもしれません。
また、それだけHDDへのアクセスがないということは、本当に電源投入している意味がある時間なのか・・・含めて、よく考えて、設定されることをおすすめします。
まあ、節電には 色々な選択肢がありますので、一つの選択肢として、興味のある方は、試されてはいかがでしょうか。
ご利用のブラウザは、広告ブロック(AdBlockなど) が適用となっていませんか?
このサイトでは、コンテンツの一部が非表示、あるいは、コメント、お問い合わせの投稿ができない、検索ができないことがあります。
関連記事 :
コメントを投稿 :