특정 사용자가 로그아웃할 때 화면에서 앱을 실행해야 하고, 사용자 목록에 있는 누군가가 로그인할 때 화면을 꺼야 합니다. 그래서 저는 cron에서 주기적으로 호출되는 bash 스크립트를 생각하고 있습니다.
- 특정 사용자가 로그인되어 있는지 확인하세요.
- 로그인한 사람이 없는 경우 - 화면을 생성하고 pid를 파일에 저장하거나 pid 파일이 이미 존재하는 경우 아무 작업도 수행하지 않습니다.
- 누군가 로그인한 경우 - 파일에서 pid를 읽고 화면을 종료합니다.
저는 cron에서 정기적으로 실행되는 스크립트를 제거하는 보다 정교한 대안을 찾고 있습니다.
답변1
몇 가지 확실한 선택:
- 로그아웃 후크를 추가하도록 수정
/etc/profile
(또는 시스템에 이미 로그아웃 후크 파일이 있는 경우 수정) - 추가 세션 컨트롤러를 추가하도록 시스템 PAM 구성을 수정합니다(pam_script 라이브러리는 이 문제를 구체적으로 해결합니다).
- 고려 중인 사용자의 로그인 셸을 수정하여 시작 시 다른 프로그램을 종료하고 실제 로그인 셸을 생성한 다음 실제 로그인 셸이 종료될 때 화면 프로그램을 시작합니다.
- (콘솔 로그인에만 관심이 있는 경우) getty를 다음으로 바꾸세요.