web-dev-qa-db-ja.com

ディスクのスピンダウン時間を決定する方法

次のコマンドを使用して、APMとスピンダウン時間の両方を設定できます。

hdparm -S 246 -B 128 /dev/sda

残念ながら、私は情報出力でAPM値のみを見つけることができます:

hdparm -I /dev/sda | grep Advanced

スピンダウン時間の値を確認するにはどうすればよいですか?私のディスクは私の価値を無視していると思います。見たいです。 smartctlを試しましたが、運が悪かったので、助けてください。

更新:tunedは非常に攻撃的であることが判明しました。音量を下げても、ディスクが回転しません。そこに何かを設定していました。

9
lzap

Hdparmでその値をクエリする方法はないようですが、ドライブがスタンバイ状態かアクティブ状態かを確認できます...

> Sudo hdparm -C /dev/sdb

/dev/sdb:
 drive state is:  standby

> Sudo hdparm -C /dev/sda

/dev/sda:
 drive state is:  active/idle
7
WolfmanJM

オプション -B 128はスピンダウンを禁止するため、-Sオプションは使用できません。見て man hdparm。スピンダウンは、127以下の-Bパラメーターでのみ可能です。

7
ahuga

man hdparmからの出力には、以下が含まれます。

-S:ドライブをアイドル(低電力)モードにし、ドライブのスタンバイ(スピンダウン)タイムアウトも設定します。ドライブはこのタイムアウト値を使用して、スピンドルモーターをオフにして電力を節約する前に(ディスクアクティビティなしで)待機する時間を決定します。そのような状況では、ほとんどのドライブの方がはるかに高速ですが、ドライブは後続のディスクアクセスに応答するのに30秒もかかる場合があります。タイムアウト値のエンコードは少し独特です。ゼロの値は、「タイムアウトが無効になっている」ことを意味します。デバイスは自動的にスタンバイモードに入りません。 1から240の値は5秒の倍数を指定し、5秒から20分のタイムアウトになります。 241から251までの値は、30分の1から11までの単位を指定し、30分から5.5時間までのタイムアウトになります。 252の値は、21分のタイムアウトを示します。値253は、ベンダー定義のタイムアウト期間を8〜12時間に設定し、値254は予約されています。 255は、21分+ 15秒として解釈されます。一部の古いドライブでは、これらの値の解釈が大きく異なる場合があります。

したがって、246の設定は、30分(3時間)の6単位を意味しますが、-Bも指定されている場合、-Sの値がどのように解釈されるかはわかりません。

1
SabreWolfy

Extended Power Controls(EPC)をサポートするSeagateディスクをお持ちの場合、私はほとんどエンタープライズクラスであると想定しています。SeaChestツールを使用できます。
最初にSeagateディスクハンドルを取得します。

 SeaChest_PowerControl -v 0 --scan --scanFlags sgtosd

結果:

 Vendor   Handle       Model Number            Serial      Number          FwRev
 ATA      sg0<->sda    ST1000LM049-2GH172      WN90H8BT               SDM1
 ATA      sg1<->sdb    ST1000LM049-2GH172      WN90HACK               SDM1
 ATA      sg2<->sdc    ST1000LM049-2GH172      WGS3M35X               SDM1
 ATA      sg3<->sdd    ST1000LM049-2GH172      WGS65M4X               SDM1
 ATA      sg4<->sde    ST1000NX0303            S470WNPT               NN02
 NVMe     /dev/nvme0n1 Force MP510             184282050001276960F1   ECFM11.0

次に、待機時間を取得します。

 SeaChest_PowerControl -v 0 -d /dev/sg4 --showEPCSettings

結果:

 ===EPC Settings===
    * = timer is enabled
    C column = Changeable
    S column = Saveable
    All times are in 100 milliseconds

 Name       Current Timer Default Timer Saved Timer   Recovery Time C S
 Idle A     *200          *10           *200          150           Y Y
 Idle B      1200         *2400          1200         650           Y Y
 Idle C      1300          6000          1300         4000          Y Y
 Standby Z  *1200          36000        *1200         15000         Y Y

(実験的なIdle_CとStandby_Zの値は非常に低くてもかまいません)

このツールは Seagate から入手できます。

上記の例は、Seagate Enterprise Capacity 2.5 "1TB SATA(ST1000NX0343)からのものです。SeagateBarraCuda Pro 2.5" 1TB SATA(ST1000LM049)で同じように試したところ、明らかにEPCをサポートしていないため機能しませんでした。

0
MrCalvin