ArchLinuxを実行しているラップトップにSSDとHDDがあります。後者はめったに使用しません。/mnt/sdb5としてマウントされ、バッテリーがオンのときにプロアクティブにスピンダウンするように構成されています(/etc/default/tlp
、DISK_APM_LEVEL_ON_BAT
はsdbの値が1です)。
ただし、ディスクは2つの状況でスピンアップしますが、私はそうしませんでした。
マシンを一時停止すると、マシンが回転し、すぐに再びダウンします。ドライブが取り付けられてからドライブに触れていないのに、なぜこれが行われるのか、私は一生想像できません。
マシンをスリープ解除すると、スピンアップします。おそらくそれはそれがそこにあることを確認しているのでしょうか?
(起動時にも起動しますが、理解できます。もちろん、パーティションテーブルを読み取る必要があります。)
ハードディスクドライブを取り外さずにこれらのスピンアップを回避できますか?使いたいときだけマウントしたいです。
ほとんどのドライブメーカーは、ジャンパー設定を使用して、デバイスが自身の電力を管理できるようにしています。たとえば、Green Western Digitalドライブでは、ジャンパーピン3および4(ドライブの背面からジャンパーブロックを見て右から2列目)。これが完了すると、コマンドが送信されない限り、ドライブは回転しません。これにより、RAIDまたはボールトコントローラがドライブを順次または必要に応じて起動できるようになります。
以下は、Arch固有ではないいくつかのアプローチを示唆しています。あなたのマイレージは異なる場合があります。
ドライブがジャンパーされている状態で、マウント時に開始をトリガーする必要があります。起動時に、これは/etc/init.d内のスクリプト、またはシステムのinit(8)に応じて「mountallの開始時に開始」トリガーされたスクリプトを使用して実行されます。必要になるまでマウントしない場合、これは問題ではありません。
それらが検出されると、udev(8)または他のデーモンが魔法のようにディスクのスリープを開始し、デーモンのルールの変更が必要になる場合があります。
/ sbin/mountの作成が必要になる場合があります。 FSタイプの元のマウントプログラムを使用する前に、マウントコマンドをインターセプトし、ディスクを準備するためのスクリプト。たとえば、/ sbin /mount.cifsを/ usr/lib/mountなどの場所に移動します。 /そして、/ sbin/mount.cifsに配置したスクリプト(またはプログラム)から呼び出します。このスクリプトは、最初にドライブに電力を供給し、場合によってはドライブの準備ができるまで待機します。
上記のようにumount(8)を使用して、ドライブをスリープ状態にします。
udev(8)は、デバイスの状態が変化したときに処理/使用したい「デバイスオフ/オンライン」イベントを発行します。
必要な場合にのみデバイスが回転したら、自動管理のためにautomount(8)またはafuse(8)を検討することができます。そうすれば、スリープ状態のドライブ上のファイルを参照するときはいつでも、データを透過的にスピン、マウント、および返しますが、多少の遅延はあります。しばらくアイドル状態になると、アンマウント(8)してスピンダウンします。
起動時にマウントされるパーティションを無効にするには、/etc/fstab
を編集する必要があります。起動時にHDDが自動マウントされないようにするには、次のように、パーティションごとに1行追加します。
/dev/sdb5 / auto noauto 0 0
更新:
Sudo hdparm -y /dev/sdb
-y Force an IDE drive to immediately enter the low power consump‐
tion standby mode, usually causing it to spin down. The current
power mode status can be checked using the -C option.
hdparm -S X? /dev/sb5
ここでX?以下の説明によると、私が理解できる限り、1は5秒間動作し、その後「スリープ」します。
これはman hdparm
からです
-S Put the drive into idle (low-power) mode, and also set the
standby (spindown) timeout for the drive. This timeout value is
used by the drive to determine how long to wait (with no disk
activity) before turning off the spindle motor to save power.
Under such circumstances, the drive may take as long as 30 sec‐
onds to respond to a subsequent disk access, though most drives
are much quicker. The encoding of the timeout value is somewhat
peculiar. A value of zero means "timeouts are disabled": the
device will not automatically enter standby mode. Values from 1
to 240 specify multiples of 5 seconds, yielding timeouts from 5
seconds to 20 minutes. Values from 241 to 251 specify from 1 to
11 units of 30 minutes, yielding timeouts from 30 minutes to 5.5
hours. A value of 252 signifies a timeout of 21 minutes. A
value of 253 sets a vendor-defined timeout period between 8 and
12 hours, and the value 254 is reserved. 255 is interpreted as
21 minutes plus 15 seconds. Note that some older drives may
have very different interpretations of these values.
それが役立つ場合は、少し異なる/etc/hdparm
に追加できます。