省電力が無効になっているにもかかわらず HDD がスピンダウンする

省電力が無効になっているにもかかわらず HDD がスピンダウンする

最近、HDD がかなり頻繁にスピンダウンしていることに気付きました。私の知る限り、これは新しい動作です。頻繁なスピンダウン/スピンアップ シーケンスによるハードウェアの損傷を心配しています (このようなことが起こるのでしょうか?)。Linux 5.15.8-1-default を実行しており、hdparm を使用して省電力オプションを変更しようとしましたが、これがインターネットで見つけた唯一の解決策でした。

hdparm -S 255 /dev/sda

/dev/sda:
 setting standby to 255 (21 minutes + 15 seconds)

そして

hdparm -B 255 /dev/sda

/dev/sda:
 setting Advanced Power Management level to disabled
 APM_level      = off

それでも、HDD は数秒後にスピンダウンすることがよくあります。例:

dmesg -T |grep sda

[So Jan  2 09:31:39 2022] sd 0:0:0:0: [sda] 1953525168 512-byte logical blocks: (1.00 TB/932 GiB)
[So Jan  2 09:31:39 2022] sd 0:0:0:0: [sda] 4096-byte physical blocks
[So Jan  2 09:31:39 2022] sd 0:0:0:0: [sda] Write Protect is off
[So Jan  2 09:31:39 2022] sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
[So Jan  2 09:31:39 2022] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[So Jan  2 09:31:39 2022]  sda: sda1 sda2 sda3 sda4 sda5
[So Jan  2 09:31:39 2022] sd 0:0:0:0: [sda] Attached SCSI disk
[So Jan  2 09:31:45 2022] EXT4-fs (sda4): recovery complete
[So Jan  2 09:31:45 2022] EXT4-fs (sda4): mounted filesystem with ordered data mode. Opts: (null). Quota mode: none.
[So Jan  2 09:37:59 2022] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[So Jan  2 09:37:59 2022] sd 0:0:0:0: [sda] Stopping disk
[So Jan  2 09:38:02 2022] sd 0:0:0:0: [sda] Starting disk
[So Jan  2 09:42:59 2022] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[So Jan  2 09:42:59 2022] sd 0:0:0:0: [sda] Stopping disk
[So Jan  2 09:52:00 2022] sd 0:0:0:0: [sda] Starting disk
[So Jan  2 09:52:35 2022] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[So Jan  2 09:52:35 2022] sd 0:0:0:0: [sda] Stopping disk
[So Jan  2 09:53:01 2022] sd 0:0:0:0: [sda] Starting disk
[So Jan  2 09:53:38 2022] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[So Jan  2 09:53:38 2022] sd 0:0:0:0: [sda] Stopping disk
[So Jan  2 10:01:54 2022] sd 0:0:0:0: [sda] Starting disk
[So Jan  2 10:02:18 2022] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[So Jan  2 10:02:18 2022] sd 0:0:0:0: [sda] Stopping disk
[So Jan  2 10:12:00 2022] sd 0:0:0:0: [sda] Starting disk
[So Jan  2 10:12:20 2022] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[So Jan  2 10:12:20 2022] sd 0:0:0:0: [sda] Stopping disk

hdparmコマンドとdmesgの発行の間にはいいえ再起動してください。このトピックが頻繁に扱われていることは承知していますが、通常は hdparm を使用すると成功しており、過去にこれが起こらなかった理由がわかりません。そこで、私の質問は次のとおりです。

  1. スピンダウンとスピンアップを繰り返すことは本当にハードウェアに悪影響を与えるのでしょうか?

  2. 動作の変化は、a) ソフトウェアの更新、または b) ハードウェアの古さによって発生するのでしょうか?

  3. 私が見つけられなかった解決策はありますか? ドライブを長時間稼働させるにはどうしたらよいでしょうか?

過去に、hdparm 設定を無視するデバイスをいくつか見つけましたが、このドライブまたはシステムの動作が変わったのが本当に奇妙に思えます。ご協力いただければ幸いです。

答え1

この問題の原因は tlp.service です。tlp.service は BAT で ALPM (AHCI リンク電源管理) と AHCI ランタイム PM を有効にし、HDD/SSD の起動/停止/開始/停止を引き起こします。

無効にするには、/etc/tlp.conf (または古いバージョンの場合は /etc/default/tlp.conf) で、次のコメントを解除します。

SATA_LINKPWR_DENYLIST="hostX"

tlp-stat -d の出力を参照してホストを特定し、それに応じて 'X' を置き換えます。コメントを解除して 'on' ('無効' を意味します) に設定します。

AHCI_RUNTIME_PM_ON_BAT=on

設定を有効にするには、リセットするだけでなく、電源を入れ直す必要があります。

Powertop で確認します - タブ「調整可能な設定」には以下が表示されます:

bad  Runtime PM for disk sda
bad  Runtime PM for port ata1 of PCI device: [your specific vendor device e.g. Intel Atom/Celeron/Pentium Processor N3XXX Series]
bad  Runtime PM for port ata2 of PCI device: [your specific vendor device e.g. Intel Atom/Celeron/Pentium Processor N3XXX Series]

監視するには「journalctl -f」を参照してください。

ソース

関連情報