それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

うるさいHDDを黙らせる/ hdparm でHDD電源オフでスピン停止にする

HDD が睡眠を妨げる。

いまどきHDDなんかやめてSSDにしろと言われそうなのですが。SSD・HDDを1TBあたりの単価を考えると8倍近い。 そこそこ安価にデータをアーカイブするとしたらHDDの効率がいいわけです。

アーカイブなのでそんなに頻繁にアクセスしないので、電源を切っておけばいいのですが、取り外してしまうと使いたいときに使えないので死蔵することになり、データを置いておく意味すら希薄になる。

そこで、スピンダウンをして静かにしてもらえばいいのではないかと。

hdparm でスピンオフ時間を設定できる。

hdparm を使えば、スピンをオフ時間を設定できるらしい。

takuya@:~$ sudo hdparm -S 25  /dev/sd*

/dev/sda:
 setting standby to 25 (2 minutes + 5 seconds)

/dev/sdb:
 setting standby to 25 (2 minutes + 5 seconds)

/dev/sdc:
 setting standby to 25 (2 minutes + 5 seconds)

/dev/sdd:
 setting standby to 25 (2 minutes + 5 seconds)
 

即時オフ

今すぐオフもできる。恐ろしいので、やらないけど。

sudo hdparm -S 0 /dev/sda1

sudo vim /etc/hdparm.conf

設定の永続化

 command_line {
  hdparm -S 25 /dev/sda
  hdparm -S 25 /dev/sdb
  hdparm -S 25 /dev/sdc
  hdparm -S 25 /dev/sdd
}

注意点

HDDのスピンダウンとアップを頻繁に繰り返すと故障の原因になりやすい。 また、自動チェックツール(smartd)やデフラグでアップになる可能性が高い。

現在の状態を確認する。

hdparm -C で状態を確認できる。

takuya@:~$ sudo hdparm -C /dev/sd*

/dev/sda:
 drive state is:  active/idle

/dev/sdb:
 drive state is:  active/idle

/dev/sdc:
 drive state is:  active/idle

/dev/sdd:
 drive state is:  active/idle

/dev/sde:
 drive state is:  active/idle

/dev/sdf:
 drive state is:  active/idle

今すぐスリープ

今すぐスリープできる。

sudo hdparm -Y /dev/sd*

スリープになったの確認する

sudo hdparm -C /dev/sd*  # ちょっと時間がかかる。

smartmontools が起動させてしまうらしい。

しかし、HDDの電源をオフでも、smartd が起こしてしまうとのこと https://www.systemworks.co.jp/ex_spindown.php

たとえば、3日おきくらいにしておくとか。

takuya@borane:~$ cat /etc/default/smartmontools
# 2021-11-18 by takuya 3日おきくらい
smartd_opts="--interval=259200"

電源オフは茨の道。

どうしても停止させたいときは止められることはわかるが、あまり止めるべきでもないのかもしれない。

予備ディスクはスタンバイでもいいかも

接続してるだけの待機ディスクは、スタンバイにしてもいいと思う。

参考資料