Execute o script quando usuários específicos saírem

Execute o script quando usuários específicos saírem

Preciso executar meu aplicativo na tela quando usuários específicos estiverem desconectados e encerrar a tela quando alguém da minha lista de usuários fizer login. Então, estou pensando no script bash, que será chamado periodicamente do cron e:

  1. Verifica se usuários específicos estão logados.
  2. Se ninguém estiver logado - gere a tela e salve o pid no arquivo ou não faça nada se o arquivo pid já existir
  3. Se alguém estiver logado - leia o pid do arquivo e mate a tela

Estou procurando alternativas mais sofisticadas, que eliminem a execução periódica de scripts do cron.

Responder1

Várias opções óbvias:

  1. modifique /etc/profilepara adicionar um gancho de logout (ou se o seu sistema já tiver um arquivo de gancho de logout, modifique-o)
  2. modifique a configuração do PAM do sistema para adicionar um controlador de sessão extra (a biblioteca pam_script aborda especificamente isso)
  3. modifique o shell de login dos usuários em consideração para algo que mate seu outro programa na inicialização, gere o shell de login real e, em seguida, inicie o programa de tela quando o shell de login real sair
  4. (se você se preocupa apenas com logins do console) substitua getty

informação relacionada