特定のユーザーがログアウトしたときにスクリプトを実行する

特定のユーザーがログアウトしたときにスクリプトを実行する

特定のユーザーがログアウトしたときに画面上でアプリを起動し、ユーザーリストの誰かがログインしたときに画面をオフにする必要があります。だから私はcronで定期的に呼び出されるbashスクリプトを考えています。

  1. 特定のユーザーがログインしていることを確認してください。
  2. ログインしている人がいない場合 - 画面を作成し、pidをファイルに保存するか、pidファイルがすでに存在する場合は何もしません。
  3. 誰かがログインしている場合 - ファイルからpidを読み、画面を終了します。

私はcronから定期的に実行されているスクリプトを削除するより洗練された選択肢を探しています。

ベストアンサー1

いくつかの確実な選択:

  1. ログアウトフックを追加するように変更/etc/profile(またはシステムにすでにログアウトフックファイルがある場合は修正)
  2. 追加のセッションコントローラを追加するようにシステムPAM設定を変更します(pam_scriptライブラリはこの問題を具体的に解決します)。
  3. 検討中のユーザーのログインシェルを変更して、起動時に他のプログラムを終了し、実際のログインシェルを作成し、実際のログインシェルが終了すると画面プログラムを起動します。
  4. (コンソールログインにのみ興味がある場合)gettyを次のように置き換えます。

おすすめ記事