사용자가 로그인할 때 프로세스를 실행하고 마지막 세션이 닫힐 때 종료하는 방법은 무엇입니까?

사용자가 로그인할 때 프로세스를 실행하고 마지막 세션이 닫힐 때 종료하는 방법은 무엇입니까?

특정 사용자가 첫 번째 세션을 열 때 특정 프로세스를 시작하고 사용자가 마지막 세션을 닫을 때 프로세스를 종료하고 싶습니다. 활성화된 사용자 세션 수에 관계없이 하나의 프로세스 인스턴스만 활성화되어야 하며 더 이상 세션이 없으면 해당 인스턴스를 종료해야 합니다. 어떻게 구현할 수 있나요?

보충: 프로세스에는 setuid 속성 세트가 있으며 루트 권한으로 생성됩니다.

답변1

그것은 모두 사용중인 시스템에 따라 다릅니다. 프로세스 시작에 관해서는 쉘이 열릴 때 프로세스가 시작되도록 하려면 이를 쉘의 rc 파일에 추가합니다. 귀하 .bashrc또는 .zshrc유사한 콘텐츠에 이를 추가할 수 있습니다. 종료는 프로세스에 따라 로그아웃 시 종료됩니다. 시작 시 실행되고 쉘 rc에 의존하지 않는 systemd 또는 동등한 서비스를 사용할 수도 있습니다. 어떤 시스템을 사용하고 프로세스는 무엇입니까?

관련 정보