コミュニティソリューション

ZimaOSのUSBエンクロージャーがスピンダウンしない:DASスタンバイガイド

TerraMaster D4-320 users reported that USB HDDs still would not spin down on ZimaOS 1.6.0 even though the same enclosure slept normally on other systems.

TerraMaster D4-320のようなUSBエンクロージャー内のHDDがZimaOSで一度もスピンダウンしない場合は、古いsmartdのウェイクアップ不具合と、エンクロージャー独自のUSB-to-SATAスタンバイ動作を切り分けてください。 ZimaOS 1.6.0では、smartdが定期的にディスクをウェイクアップする問題が修正されました。しかし、複数のユーザーから、1.6.0でも特定のUSB DASモデルは回転し続けるとの報告が寄せられています。

つまり、現在の診断ではエンクロージャー固有の問題が疑われます。USBブリッジがATAスタンバイコマンドを転送しているか、ドライブが手動でスタンバイ状態に入れるか、そしてZimaOSまたは別のプロセスが直ちにドライブをウェイクアップしているかを確認してください。Docker化したhd-idleコンテナが万能の解決策だと考えないでください。

まずsmartdのウェイクアップ不具合を解消する

ZimaOS 1.6.0では、smartdが断続的にディスクをウェイクアップし、通常のスリープを妨げる問題が正式に修正されました。

現在のZimaOS 1.6.0リリースノートを、バージョン確認の基準にしてください。

USBエンクロージャーがダイレクトSATAと異なる理由

DASでは、Linuxと各ディスクの間にUSB-to-SATAブリッジコントローラーが入ります。ATAの電源管理コマンドを適切に転送するブリッジもあれば、異なる方法でフィルタリングまたは変換するブリッジもあります。複数ベイのエンクロージャーでは、さらに別のファームウェア層が加わり、ドライブが特殊な方法で認識されることがあります。

ステップ1:各ディスクが個別に公開されていることを確認する

lsblk -o NAME,MODEL,SERIAL,TRAN
lsusb

すべてのディスクがUSB接続のブロックデバイスとして個別に表示されたら、スタンバイコマンドを試す前に、安定した識別子を控えておきます。

ステップ2:ウェイクアップさせない状態確認をテストする

ブリッジがSATパススルーに対応している場合、次のようなコマンドを使えます。

smartctl -d sat -n standby /dev/sdX

このコマンドは、ドライブを意図的にウェイクアップさせず、すでにスリープしているかどうかを確認できます。すべてのブリッジが同じ-dモードに対応しているわけではありません。

ステップ3:手動スタンバイを慎重にテストする

対応している場合は、ドライブまたはエンクロージャーのメーカーが文書化しているスタンバイ方法、またはそのブリッジで動作することが確認されているLinuxツールを使用してください。一度でも成功する手動スタンバイコマンドのほうが、GUIのタイマー設定を繰り返し変更するより有効な判断材料になります。

ドライブがスリープした直後にウェイクアップする場合は、別のプロセスがアクセスしています。まったくスリープしない場合は、ブリッジの互換性がより有力な原因です。

Docker上のhd-idleが扱いにくい理由

hd-idleにはブロックデバイスへの直接アクセスが必要であり、ディスクを積極的にマウントして使用しているホストとの調整も必要です。rawディスクを特権コンテナに渡すと分離性が低下し、デバイス名が変わった際に不安定になる可能性があります。

スタンバイ専用にrawデバイスを制御する永続的なコンテナを構築するよりも、利用可能であれば、現在のZimaOSネイティブソリューションを使用してください。

コミュニティの回避策はネイティブサポートと同じではない

あるD4-320ユーザーは、smartctl -s standby,nowを定期的に実行するsystemdタイマーを構築しました。これは回避策として機能する可能性がありますが、アクティブなI/Oを確認せずにタイマーでスタンバイを強制するのは危険です。5分経過したというだけで、バックアップ、スクラブ、ダウンロード、ファイルコピーを中断してはいけません。

エンクロージャーのファームウェアとネイティブ電源機能を確認する

同じD4-320がWindowsやmacOSでは正常にスリープするのにLinuxではスリープしない場合は、それらのOSがメーカー独自のUSBコマンドやユーティリティを使用していないか比較してください。ZimaOSでは、汎用的なATA電源コマンドだけで、エンクロージャー独自の動作を常に再現できるとは限りません。

ダイレクトSATAのほうが適している場合

低消費電力と予測可能なディスクスタンバイが重要であれば、マルチベイUSBブリッジよりも、ダイレクトSATAのほうが通常、ドライブの電源管理コマンドを透過的に扱えます。

ストレージのトラブルシューティングガイドでは、より安全な診断手順を説明しています。

FAQ

ZimaOS 1.6.0ですべてのディスクのスピンダウン問題が解決しましたか?

いいえ。特定のsmartdウェイクアップ問題が修正されただけです。USBブリッジの互換性によって、一部のエンクロージャーではスタンバイに入れない、またはスタンバイが妨げられる場合があります。

TerraMasterはWindowsではスリープするのに、ZimaOSではスリープしないのはなぜですか?

エンクロージャーが、Linux環境とは異なるブリッジ固有またはメーカー固有の電源管理動作に依存している可能性があります。

hd-idleをDockerで実行すべきですか?

rawデバイスへのアクセスを許可すれば可能ですが、特権設定とデバイスマッピングが複雑になります。最初に選ぶ方法としては適切ではありません。

数分ごとにスタンバイを強制しても安全ですか?

ディスクがアイドル状態であることを保証できる場合に限り安全です。無条件のタイマーは、アクティブな書き込み、バックアップ、スクラブ、メディアアクセスと競合する可能性があります。