web-dev-qa-db-ja.com

ディスクのスピンダウンタイムアウトを増やす

私のラップトップ(Ubuntu 12.04を実行している)がバッテリーを使用している場合、数秒間の非アクティブ(約20秒)後にディスクの電源が切れます。私はlightdmを使用してログインし、いくつかのGnomeコンポーネントを実行しています(gnome-panelといくつかの依存関係があります)が、デスクトップ環境としてGnomeもUnityも使用していません(Sawfishウィンドウマネージャーを手動で起動します)。

20秒はとてつもなく速い:実際には、ディスクはすぐに電源を切ってすぐにバックアップし続けますが、遅い(ユーザーエクスペリエンスが悪い)、 ドライブを損傷する可能性がある (具体的なデータを見つけることができませんでしたが)これについて)、スピンダウン時間が非常に短い場合、実際により多くのエネルギーを消費します( a 2008 analysis 特定のディスクでは、スタンバイモードが9秒以上続くとエネルギーを節約できることがわかりました。少ない)。

したがって、このタイムアウトを増やしたいと思います。これどうやってするの?どのソフトウェアがスピンダウンを引き起こしているのかわかりません。

実行中のプロセスを見ると、電源管理に関連する可能性のあるupowerdのみが表示されます。それを殺しても違いはありません。

おそらくタイムアウトは ディスク自体hdparm -I /dev/sdaから発生します。「高度な電源管理レベル:1」(hdparmによると5秒を意味するため、20秒とは一致しません)ドキュメンテーション…)。他の時間に値254の同じマシンを見てきました。

バッテリー駆動中に値が変化する原因は何ですか? /etc/acpi/*hdparmの呼び出しが表示されません。

3
Gilles
/etc% grep -lw 20 **/*(.)
…
laptop-mode/laptop-mode.conf
…
$ grep -w 20 laptop-mode/laptop-mode.conf 
# Default is 2 hours on AC (NOLM_HD_IDLE_TIMEOUT_SECONDS=7200) and 20 seconds
LM_AC_HD_IDLE_TIMEOUT_SECONDS=20
LM_BATT_HD_IDLE_TIMEOUT_SECONDS=20

そしてその問題について

/etc% grep hdparm **/*(.)
…
laptop-mode/laptop-mode.conf:# hdparm
laptop-mode/laptop-mode.conf:# really SATA drives that only _look_ like SCSI drives, and will use hdparm
laptop-mode/laptop-mode.conf:# Idle timeout values. (hdparm -S)
laptop-mode/laptop-mode.conf:# Power management for HD (hdparm -B values)
laptop-mode/laptop-mode.conf:# Write cache settings for HD (hdparm -W values)

この設定は laptop-mode-tools から来ています。 /etc/laptop-mode/laptop-mode.confのデフォルト設定は次のとおりです。

# Idle timeout values. (hdparm -S)
# Default is 2 hours on AC (NOLM_HD_IDLE_TIMEOUT_SECONDS=7200) and 20 seconds
# for battery and for AC with laptop mode on.
#
LM_AC_HD_IDLE_TIMEOUT_SECONDS=20
LM_BATT_HD_IDLE_TIMEOUT_SECONDS=20
NOLM_HD_IDLE_TIMEOUT_SECONDS=7200

私はこれらの20の値を賢明なものに変更しています。

2
Gilles