私は、外部ハードドライブを使用してファイルを提供するarmbianに小さなNASのようなデバイスを作成しました。 (ハードウェア)インターフェイスには、縮小されたSATAコマンドセットのみが用意されており、いくつかのAPM / AAM /スタンバイ機能が含まれていますが、待機間隔が長くなってほしいと思います。
一部のSATAコマンドを繰り返し実行してドライブをアクティブに保つことができますが、いくつかのロジックの実装に問題があります。
最後のアクティビティからxx分後にディスク待機状態をシミュレートしたいと思います。
SMBD、ZFS、または理想的には、ハードドライブ自体が読み取り/書き込みアクティビティを実行した最後の時間を知らせる賢い方法または監視ユーティリティがありますか?
ifplugdの間隔のようなもの... "dtrace"について知っておくべきですか?
答え1
たぶん、ブロックデバイスの読み取り/書き込み操作の数のカウンタをポーリングし、変更されなくなったときにタスクを実行することもできます。このようなブロックデバイスの場合、sda
統計があり、列がカーネル/sys/block/sda/stat
に記述されています。ドキュメント/iostats.txt。特に、列1と5を合計すると、完了したI / Oジョブの合計数が表示されます。