![자동으로 실행되는 스크립트 목록(어디서)과 시기는 무엇입니까?](https://linux55.com/image/21931/%EC%9E%90%EB%8F%99%EC%9C%BC%EB%A1%9C%20%EC%8B%A4%ED%96%89%EB%90%98%EB%8A%94%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%20%EB%AA%A9%EB%A1%9D(%EC%96%B4%EB%94%94%EC%84%9C)%EA%B3%BC%20%EC%8B%9C%EA%B8%B0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
컴퓨터를 시작할 때부터 컴퓨터를 다시 종료할 때까지 자동으로 실행되는 스크립트(리소스 목록)를 아는 사람이 있습니까?
자동으로 실행되도록 스크립트를 추가할 수 있는 곳이 몇 군데 있다는 것을 알고 있지만 어느 정도 완전한 목록을 찾을 수는 없었습니다.
예를 들어, 저는 다음을 알고 있습니다.
~/.profile
로그인 시 실행crontab -e
특정 시간 및/또는 날짜에 실행되는 스크립트를 추가하는 데 사용할 수 있습니다.
하지만 스크립트가 실행되도록 스크립트를 어디에 넣어야 할지 모르겠습니다.
- 시작 후 X가 초기화되기 전
- X(또는 다른 그래픽 셸)가 초기화된 후, 누군가 로그인하기 전
- X 세션에 로그인한 후
- 빠른 사용자 전환 전/후
- X 세션에서 로그아웃하기 전
- X 쉘을 닫기 전
- X 종료 후, 시스템 정지 전
- tty-1..6을 통해 로그인 후/로그아웃 전
- SSH를 통해 로그인 후/로그아웃 전
그런 목록이 있나요? 그렇지 않다면 여기서 조립해도 될까요?
답변1
Ubuntu Linux의 경우 솔루션은 다음과 같습니다.
시작 후 X가 초기화되기 전:GDM(ubuntu-desktop을 사용하는 사용자의 경우) 또는 KDM(kubuntu-desktop을 사용하는 사용자의 경우)에서 Ubuntu 부팅 X-Windows
GDM/KDM 이전에 스크립트를 실행하려면 고유한 시작 스크립트를 작성해야 합니다. 이를 위해 당신은 읽을 수 있습니다누보 리치 요리법.
사용자 전환 후:
~/.bashrc
파일 에 스크립트를 추가해야 합니다 .tty를 통해 로그인한 후:
~/.bash_profile
파일 에 스크립트를 추가해야 합니다 .SSH를 사용하여 로그인했지만 tty를 사용하여 로컬로 로그인하지 않은 경우:이 경우 동일한 파일에 스크립트도 추가해야
~/.bash_profile
하지만 이 경우에는 환경 변수가 있는지 테스트SSH_CONNECTION
하고 환경 변수가 있는 경우에만 명령을 실행합니다.tty를 통해 로그아웃하기 전에:
~/.bash_logout
파일 에 스크립트를 추가해야 합니다 .SSH를 통해 로그아웃하기 전에:
~/.bash_logout
파일에 스크립트를 추가 해야 하지만 이 경우SSH_CONNECTION
환경 변수가 존재하는지 테스트하고 존재하는 경우에만 명령을 실행합니다. 파일에 다음 줄을 추가해야합니다if [[ -n $SSH_CONNECTION ]]
답변2
Linux 내장 작업에 관심이 있다면 Unix System V 스타일 초기화를 구현하는 작업 모드인 Linux 런레벨을 참조할 수도 있습니다.
- 0 시스템 종료를 중지하십시오.
- 1 단일 사용자 모드는 관리 작업에 사용되는 모드입니다.
- 2 다중 사용자 모드는 네트워크 인터페이스를 구성하지 않으며 네트워크 서비스를 내보내지 않습니다.
- 삼 네트워킹이 포함된 다중 사용자 모드는 시스템을 정상적으로 시작합니다.
- 4 특별한 목적을 위해 미사용/사용자 정의 가능.
- 5 적절한 디스플레이 관리자를 사용하여 시스템을 정상적으로 시작하십시오. (GUI 사용) 런레벨 3+ 디스플레이 관리자로.
- 6 재부팅 시스템을 재부팅합니다.
예를 들어 아래에서는 Linux 프로세스 및 해당 실행 수준 설정의 일부 목록을 볼 수 있습니다.
chkconfig --list
acpid 0:off 1:off 2:on 3:on 4:on 5:on 6:off
anacron 0:off 1:off 2:on 3:on 4:on 5:on 6:off
atd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
auditd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
autofs 0:off 1:off 2:on 3:on 4:on 5:on 6:off
avahi-daemon 0:off 1:off 2:off 3:off 4:off 5:off 6:off
avahi-dnsconfd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
.
.
.