web-dev-qa-db-ja.com

非アクティブ期間が経過した後、USBハードドライブを自動的にスピンダウンする

15分間など、非アクティブな期間が経過した後、USBハードドライブを自動的にスピンダウンしたいと思います。そして、もちろん、アクセス時にそれらを自動的に再起動します。これどうやってするの?ありがとう

4
Chris

hd-idleユーティリティが役立つはずです

以下のソースを見て、よく読んで、それが役立つかどうかを確認してください。

  1. 次のコマンドを使用して、CVSでソースコードをダウンロードします。

    • cvs -d:pserver:[email protected]:/cvsroot/hd-idle login
      • パスワードを求められたらリターンキーを押す
    • cvs -z3 -d:pserver:[email protected]:/cvsroot/hd-idle co -P hd-idle
  2. Debianシステム:

    • 実行:dpkg-buildpackage -rfakeroot
    • パッケージをインストールするには、「dpkg -i ../hd-idle_*.deb」を実行します
  3. 使用法:

    hd-idle
    
    # This will start hd-idle with the default options, 
    # causing all SCSI (read: USB, Firewire, SCSI, ...) hard disks 
    # to spin down after 10 minutes of inactivity
    

注:hd-idleは/proc/diskstatsを使用してディスク統計を読み取ることに注意してください。このファイルが存在しない場合、hd-idleは機能しません。

情報:

hd-idleの実行

Hd-idleを実行するには、「hd-idle」と入力します。これにより、デフォルトのオプションでhd-idleが起動し、すべてのSCSI(読み取り:USB、Firewire、SCSIなど)のハードディスクが10分間非アクティブになるとスピンダウンします。

Debianシステムでは、/ etc/default/hd-idleを編集して有効にした後、「/ etc/init.d/hd-idle start」を使用してhd-idleを実行します。

Hd-idleは/ proc/diskstatsを使用してディスク統計を読み取ることに注意してください。このファイルが存在しない場合、hd-idleは機能しません。

コマンドラインオプション

-a <name>   Set (partial) device name of disks for subsequent idle-time parameters (-i). This parameter is optional in the sense that there's a default entry for all [SCSI] disks which are not named otherwise by using this parameter.
-i <idle_time>  Idle time in seconds for the currently named disk(s) (-a <name>) or for all disks.
-l <logfile>    Name of logfile (written only after a disk has spun up). Please note that this option might cause the disk which holds the logfile to spin up just because another disk had some activity. This option should not be used on systems with more than one disk except for tuning purposes. On single-disk systems, this option should not cause any additional spinups.
-t <disk>   Spin-down the specified disk immediately and exit. Use only the disk name (e.g. sda) without /dev/ prefix
-d  Debug mode. This will prevent hd-idle from becoming a daemon and print debugging info to stdout/stderr
-h  Print brief usage information

パラメータ「-a」について:

Hd-idleのユーザーは、個々のディスクのアイドル時間パラメーターを設定する手段を求めています。これは、一部の[SCSI]ディスクが停止に反応しない可能性があるためだけでなく、非常に理にかなっています。元々、hd-idleにはすべてのディスクに対して1つのアイドル時間がありました。パラメーター "-a"を使用して、ディスクのデバイス名にフィルターを設定できます(/ dev /を省略)。その後のアイドル時間設定に使用できます。

  1. 最初の「-a」オプションの前の「-i」オプションは、デフォルトのアイドル時間を設定します。したがって、以前のリリースのhd-idleとの互換性は維持されます。

  2. デフォルトでディスクのスピンダウンを無効にしてから、選択したディスクでスピンダウンを再度有効にするには、デフォルトのアイドル時間を0に設定します。

例:

hd-idle -i 0 -a sda -i 300 -a sdb -i 1200

この例では、デフォルトのアイドル時間を0に設定し(hd-idleはディスクをスピンダウンさせない)、デバイス名に文字列 "sda"または "sdb"を含むディスクの明示的なアイドル時間を設定します。 hd-idleの停止

killall hd-idleを使用して、hd-idleを停止します。 Debianシステムでは、/etc/init.d/hd-idle stopを使用します。

ソース:

http://hd-idle.sourceforge.net/

1
George Udosen

これには通常、ハードドライブ側のUSB-to-SATAコントローラーが関係します。ほとんどの外付けUSBハードドライブのファームウェアも構成可能ではないため、常にこのように設定できるとは限りません。これを行うことができるコントローラがいくつかあるかもしれませんが、主流のUSBハードドライブデバイスであるコントローラはありません。

残念ながら、コントローラーが独自のソフトウェアスイートなどを介してこれらの種類の変更を設定に許可していない場合、Linuxとその基本ソフトウェアだけでこれを変更する実際の方法はありません。

1
Thomas Ward

オープンプログラム

ディスクを開くことができるツールに移動します

最小化アイコンの左側のトップバー

アイコンをクリックして、ドライブの設定に移動します

そこで、USBディスクまたは他のディスクのスピンダウン設定を変更/有効にすることができます。

1
trond hansen

hdparmを使用して、スピンダウンに value を1〜255の範囲で設定できます。

コマンドはhdparm -S255/dev/sdXで、もちろんXがデバイスに適用されます。

blkidを使用して、正しいデバイスを見つけることができます。

デバイスは、アクセスされるとスピンアップします。

hdparm -C/dev/sdXを使用して、デバイスのステータス(スピンダウンを意味するスタンバイを伴うアイドル/アクティブ/スタンバイ)を確認します。

注意して処理してください:hdparm -y/dev/sdXを使用して、デバイスを手動でスピンダウンすることもできます。これは、スピンダウンするかどうかを識別するのに役立ちます(以下を参照)。


これが私の設定で動作するようになりました:

  • ラズベリーパイ
  • HGST 10TB HDD
  • USB3経由で接続

しかし、それは常に機能しませんでした。最初の接続では、手動でスピンダウンせず、自動的にスピンダウンしませんでした。何がディスクの動作を変更したのかわかりません。次の間に行った2つのこと:

  • ディスクを取り外してWin10ラップトップに接続し、ディスクの製造元からチェックプログラムを実行します。これは、短いSMARTテストを実行しただけです。そこでスピンダウンまたはAPMを変更する設定を探していましたが、それは不可能でした。
  • Raspberryにhd-idleをインストールしました。しかし、hd-idleはディスクをスピンダウンしませんでした。それで、hd-idleが実際にどのように機能するかの手がかりを探していました。それを探している間、私は手動でスピンダウンを再試行しましたが、突然動作しました。

ところで私の高度な電源管理レベルは254です。(hdparm -B/dev/sdX)。 APMがスピンダウン時間にどのように関係しているかはわかりません。通常、254の値はスピンダウンを防ぎます。スピンダウンを有効にするには、127以下に設定する必要があることも読みました。

NASの目的で製造されたHDDがスピンダウンを抑制するかもしれないと考えていました。他の貢献者から主題についてのより多くの洞察を得るために、私は追加の疑わしい詳細とともにこの答えを投稿しました。回答を後で更新できてうれしいです。

編集:常に機能しません。スタンバイ状態のディスクは、だれもアクセスせずにウェイクアップします。また、hd-idleを削除したため、-Sを使用した自動スタンバイは機能しなくなりました。

1
Ben