再起動時にacpidを再起動する方法はありますか?

再起動時にacpidを再起動する方法はありますか?

というパッケージをインストールしましたthinkpad-scripts。簡単に言えば、新しくインストールすると、デフォルトでは機能しないLinuxのThinkPadデバイスでさまざまな機能を有効にするために使用されるスクリプトの束です。

スクリプトが機能していますが、コンピュータを再起動するたびに。ノートブックをタブレットモードに切り替えると、自動回転機能は機能しません。犯人がacpid。再起動時に自動的に再起動し、これを繰り返し実行する必要がないようにacpidする方法はありますか?acpid

私は64ビットDebianを使用しています

編集:cronjobを作成しました。crontab -e

私のファイルの末尾に改行文字を残して書き込みます。

@reboot sh $HOME/acpid_restart.sh

スクリプトには以下がacpid_restart.sh含まれます。

#!/bin/sh 
systemctl restart acpid

しかし、これもまだ失敗しました...

答え1

acpid.serviceまず、実際にそのようなものであることを確認してください。スタート起動中。ホストを再起動したら、次のコマンドを使用して確認します。

# systemctl status acpid.service

started平和と言わなければなりませんenabled。そうでない場合は、systemctl enable acpid.service実際に再起動時にサービスを開始すると問題が解決する可能性があります。

次に、起動プロセス中にサービスが起動したら、ログを調べて問題があるかどうかを確認します。出力にはログの一部の行がすでに表示されておりsystemctl status、次のコマンドを使用してサービスからより多くのログを取得できます。

# journalctl -u acpid.service

次のコマンドを使用して、最後の再起動以降のすべてのログを表示することもできます。

# journalctl -b

これにより、現在発生している問題に関連する他の問題が明らかになる可能性があります。

起動プロセス中に実際に起動し、再起動するまで画面の回転が機能しないことが判明した場合、起動acpid.serviceプロセスで早すぎる可能性が高く、それが再起動するまで正しく機能しません。この場合、ログを介して問題を解決できるように、詳細な情報を入手できることを願っています。

(提案されたトラブルシューティングの方法でいくつかの問題が見つかった場合は、アップデートを投稿してください。現在表示されている症状についてより具体的にお知らせください。追加の指示をお送りします。)

最後に、cronを使用してシステムサービスを管理すると、実際に期待どおりに機能しない可能性が高くなります。

起動後、特定の時間にサービスを強制的に再起動するには、systemd タイマーデバイスを使用する方が良い方法です。起動時にサービスを無効にし、タイマーデバイスを使用してシステム起動後に実際に起動するか、起動時にサービスを有効にしたままにし、タイマーデバイスを使用して実行を使用する別のサービスユニット(restart-acpid.serviceおそらく?)をトリガーできます。 。コマンド(または基本的に同じことを行うラッパースクリプト)Type=oneshot/usr/bin/systemctl restart acpid.service

しかし、これはかなり陳腐な表現です。そのため、このような乱雑な解決策に投資するのではなく、実際に根本的な原因を見つけて、実際の問題を解決してみることをお勧めします。

関連情報