Запускать скрипт при выходе определенных пользователей из системы

Запускать скрипт при выходе определенных пользователей из системы

Мне нужно запускать свое приложение на экране, когда определенные пользователи выходят из системы, и закрывать экран, когда кто-то из моего списка пользователей входит в систему. Поэтому я думаю о скрипте bash, который будет периодически вызываться из cron и:

  1. Проверяет, вошли ли в систему определенные пользователи.
  2. Если никто не вошел в систему - создайте экран и сохраните pid в файл или ничего не делайте, если pid-файл уже существует.
  3. Если кто-то вошел в систему - прочитать pid из файла и закрыть экран

Я ищу более сложные альтернативы, которые позволят исключить периодический запуск скрипта из cron.

решение1

Несколько очевидных вариантов:

  1. изменить /etc/profile, чтобы добавить хук выхода из системы (или, если в вашей системе уже есть файл хука выхода из системы, изменить его)
  2. изменить конфигурацию системы PAM, чтобы добавить дополнительный контроллер сеанса (библиотека pam_script специально решает эту проблему)
  3. измените оболочку входа рассматриваемых пользователей на что-то, что завершит работу другой программы при запуске, создаст настоящую оболочку входа, а затем запустит программу экрана, когда настоящая оболочка входа завершит работу
  4. (если вас интересуют только входы в консоль) замените getty

Связанный контент