バッテリー残量が少なくなったときに Linux を自動シャットダウンする方法

バッテリー残量が少なくなったときに Linux を自動シャットダウンする方法

序文

最近、私の住居の電力事情が不安定で、突然の停電が頻繁に起こります。ノートパソコンを持っているのですが、電源が入らないことがあります。このままだと、ノートパソコンのSSDがすぐに壊れてしまいます。

そこで、バッテリー残量が少なくなるとコンピューターをシャットダウンし、crontab または systemd タイマーを使用して定期的にチェックする簡単なスクリプトを作成しました。

crontab コマンドの使用方法については、https://www.jb51.net/article/148575.htm を参照してください。

詳しい紹介を見てみましょう。

check_shutdown.timer:

$ cat /etc/systemd/system/check_shutdown.timer 
[ユニット]
説明=10分ごとにバッテリー残量を確認する

[タイマー]
オンカレンダー=*:0/10
永続的=true

[インストール]
WantedBy=タイマー.ターゲット

check_shutdown.service:

$ cat /etc/systemd/system/check_shutdown.service 
[サービス]
実行開始=
ExecStart=/home/jiajun/.xmonad/scripts/shutdown.py

check_shutdown.py:

#!/home/jiajun/.py3k/bin/python

psutilをインポートする
インポートログ
インポートOS
日時をインポート

bat = psutil.sensors_battery()
logging.warn("%s: バッテリーステータス: %s", datetime.datetime.now(), bat)

bat.percent < 15の場合:
ログ記録.warn("シャットダウンします")
os.system("sudo シャットダウン -h now")

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。

以下もご興味があるかもしれません:
  • Linux (Ubuntu) の休止、サスペンド、スタンバイ、シャットダウンコマンドの詳細な紹介
  • PHP は、シャットダウン、再起動、新しいサイトのオープンなど、Linux サーバーの一般的な機能を制御します。
  • Linuxのシャットダウンと再起動のコマンドを簡単にマスターする
  • ダウンロード後にシャットダウンを実現するLinuxのシェルスクリプト
  • Linux シャットダウンコマンドの概要の詳細な説明
  • Linux 管理者ガイド (5) -- 起動とシャットダウン
  • Linux をシャットダウンするときに指定されたスクリプト関数を実行する
  • Linux のシャットダウンおよび再起動コマンドの詳細な説明
  • Linuxはinitコマンドを使用してシャットダウン、再起動、モードの切り替えを行います。

<<:  星のきらめき効果を実現するネイティブ js

>>:  JavaScript はマウスのドラッグを実装して div のサイズを調整します

推薦する

MySQLクエリ制御ステートメントの詳細なグラフィック説明

mysql クエリ制御ステートメントフィールド重複排除 **キーワード: 明確** 構文: テーブル...

JDBCデータベースリンクと関連メソッドのカプセル化の詳細な説明

JDBCデータベースリンクと関連メソッドのカプセル化の詳細な説明MySQL データベースを使用して、...

標準のMySQL (x64) Windowsバージョンのインストール手順の詳細な説明

MySQL x64 はインストーラーを提供していません、インストーラーを提供していません、インストー...

Docker で Portainer ビジュアル インターフェースを構築するための詳細な手順

前回述べた問題を解決するために、オンラインで検索したところ、非常に優れたビジュアル インターフェース...

Windows に MySQL 5.7.18 の解凍バージョンをインストールするチュートリアル

1. インストールプロセスMySQL バージョン: 5.7.18 1. my.ini ファイル(簡易...

docker-maven-plugin の詳細な使用方法

目次Docker-Maven-プラグインMavenプラグインの自動デプロイメント手順1. ホストマシ...

背景とリンクとして画像を書き込む方法(背景画像+リンク)

写真を背景にしてリンクを記載します。たとえば、ウェブサイトのロゴ画像などです。例: ポテトのロゴ画像...

MySQL SQL文を最適化するためのヒント

十分に最適化されていない、またはパフォーマンスが極端に低い SQL ステートメントに直面した場合、通...

MySQL トランザクションの概念と使用法の詳細な説明

目次情事の概念取引の状態取引の役割取引の特徴トランザクション構文トランザクション対応ストレージエンジ...

ウェブページの右下隅に「いいね!」カード効果を実現するための CSS (サンプルコード)

効果 HTML を実装するには、まずクリーンな HTML ページを準備し、ノードを記述します。 &l...

MySQL 5.7 のインストールと設定の詳細な手順

1. MySQLをダウンロードする1. MySQLの公式ウェブサイトにログインし、64ビットシステム...

HTML コマンドラインインターフェースの実装

HTML部分コードをコピーコードは次のとおりです。 <!DOCTYPE html> &l...

MySQL 変数の原理と応用例

MySQL ドキュメントでは、MySQL 変数はシステム変数とユーザー変数の 2 つのカテゴリに分類...

Dockerでk8sをデプロイする方法

K8s k8s はクラスターです。クラスターには複数の名前空間があります。名前空間の下には複数のポッ...

背景画像のみを180度回転させるCSS3実装例

1. 心の旅最近コックピットを書いていたときに、背景画像を単純に特定の角度に回転させるという問題につ...