web-dev-qa-db-ja.com

バッテリーが重大な場合に休止状態になりません

Ubuntu 12.04 64bitは、バッテリーが非常に少ない場合、休止状態を拒否します。代わりに、完全なシャットダウンを行いますが、これは不要であり、データの損失を引き起こす可能性があります。

次のようにHibernate(pm-hibernate)を有効にしました 一般的な手順 pm-hibernateをテストしました。

「Power is Critically Low」の場合、電源オプションを休止状態に設定しました。これは、dconf Editorを使用して検証されています。 「org」>「gnome」>「settings-daemon」>「plugins」>「power」>「critical-battery-action」の下で、「hibernate」に設定されています。同じスキーマの下で、time-actionは「120」に設定されます。

このシャットダウンの直前に何が起こっているのかを知りたい。 pm-hibernateが実際に失敗しているかどうか、または完全に無視されているかどうかを確認するために検索するログを知りたいです。

これを自分で理解することを除けば、回避策がありますか?

20
swysocki

Ubuntu 14.04システムの別のソリューションを見つけました。多分それはあなたのために働く。

まず、laptop-mode-toolsをインストールします

Sudo apt-get install laptop-mode-tools

次に、自動休止機能を有効にする必要があります。テキストファイルを編集する必要があります。

Sudo gedit /etc/laptop-mode/conf.d/auto-hibernate.conf

そこで、ENABLE_AUTO_HIBERNATIONパラメーターを探し、0を1に置き換えます。

ENABLE_AUTO_HIBERNATION = 1

同じファイルで、コンピューターが休止状態になったときにバッテリーの充電率を調整することもできます。例えば:

AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT = 3

ファイルを保存し、バッテリーを放電させる構成をテストします。動作する場合は、スクリプトを作成してlaptop-mode-toolsをデフォルトとして設定する必要があります。

Sudo touch /etc/pm/sleep.d/10-laptop-mode-tools
Sudo chmod a+x /etc/pm/sleep.d/10-laptop-mode-tools
Sudo gedit /etc/pm/sleep.d/10-laptop-mode-tools

次に、geditで、これをコピーして貼り付けます。

case $1 in
    hibernate)
        /etc/init.d/laptop-mode stop
        ;;
    suspend)
        /etc/init.d/laptop-mode stop
        ;;
    thaw)
        /etc/init.d/laptop-mode start
        ;;
    resume)
        /etc/init.d/laptop-mode start
        ;;
    *)
        echo Something is not right.
        ;;
esac

ファイルを保存し、システムを再起動して、もう一度テストします。私はそれがあなたのために働くことを願っています。

私の意見では、何かがgnome-power-managerに干渉しているように見えます。他の誰かが問題を再現した場合、バグを報告できます。

参照:

Penalvchによる節電のヒント https://help.ubuntu.com/community/PowerManagement/ReducedPower#Using_less_power_with_laptop-mode-tools

再:Isamu715によってUbuntuをバッテリー低下で自動的にサスペンドする(コマンドライン) http://ubuntuforums.org/showthread.php?t=2092327&p=12394451#post12394451

13
Goghard

12.04の非正確な電力監視でも同じ問題がありました/いくつかありました:
(追跡し、レトリックが最終ポイントを読まないようにするために-そのようなありふれた通常の機能を復元するために「修正」が必要なのはいらいらします)

  1. Unityおよび12.04は、特に電源管理など、より堅牢な信頼性を備えた10.04の機能を提供しないため、使用するオプションは回帰です。コンピューティングシステム環境(Debian、GNU、Linuxなど)の高度な成熟には、機能を一貫して保持および変更するために、同等の厳しい規律が必要です。その結果、いくつかの十分に確立されたソフトウェアパラダイムが劣化し、電源管理を含む妥協されました。

  2. 参照:
    バグ#993440「パワフルなバッテリー状態のサスペンドオプションなし...」:バグ:「gnome-control-center」パッケージ:Ubuntu:
    解決策:(手動での労働集約的)
    lp:〜jlangvand/ubuntu/quantal/gnome-control-center/fix-for-99344

  3. pm-hibernatepm-suspend)、watchupowergrepなどを使用してスクリプトを記述し(より手間のかかる)、バッテリーの状態を監視し、必要に応じてアクションを実行します。

    擬似コードの概要:
    watchを数分ごとに使用して、grepupower -dバッテリーの統計をgsettings get org.gnome.settings-daemon.plugins.power percentage-criticalと定期的に比較し、しきい値を超えた場合はSudo pm-hibernate

    原油(プロトタイピングのみ、非実行可能)ドラフト:(すべてのバッテリーのサスペンド%<10%)
    upower --monitor-detail | grep "percentage[^\d]+\d\.\d*\%" | bash pm-suspend

    エレガントなソリューション

    • サスペンド時にさらにwatchingを中止します
    • uPS、三次電池、ソーラーパネル(夕暮れ時や雲による電力の低下)など、すべての一時的な電源をチェックします。
    • 制限されたユーザーの非特権停止(/休止状態)を許可します

参照:

バッテリーの性能は次の方法で調べることができます。

  • upower
    • watch -d upower -i /org/freedesktop/UPower/devices/battery_BAT0
    • upower --monitor-detail | grep percentage
  • gnome-power-statistics

端末を使用してバッテリーの状態を確認する方法?
バッテリーの放電率を調べるにはどうすればよいですか?

3
guest