자동으로 실행되는 스크립트(위치) 목록과 언제?

자동으로 실행되는 스크립트(위치) 목록과 언제?

(리소스 목록에 대해) 어떤 스크립트가 자동으로 실행되는지, 컴퓨터를 시작한 순간부터 다시 종료될 때까지 언제 실행되는지 아는 사람이 있습니까?

자동으로 실행되도록 스크립트를 추가할 수 있는 여러 위치를 알고 있지만 대략적인 전체 목록을 알아낼 수는 없었습니다.

예를 들어, 저는 다음을 알고 있습니다.

  • ~/.profile로그인 시 실행됩니다
  • crontab -e특정 시간 및/또는 날짜에 실행되는 스크립트를 추가하는 데 사용할 수 있습니다.

하지만 스크립트가 실행될 수 있도록 스크립트를 어디에 넣어야 할지 알 수 없습니다.

  • 부팅 후, X가 초기화되기 전
  • X(또는 다른 그래픽 셸)가 초기화된 후, 누군가 로그인하기 전
  • X 세션에 로그인한 후
  • 빠른 사용자 전환 전/후
  • X 세션에서 로그아웃하기 전에
  • X 쉘에서 종료되기 전에
  • X 종료 후, 시스템 정지 전
  • tty-1..6을 통해 로그인 후/로그아웃 전
  • SSH를 통해 로그인 후/로그아웃 전

그런 목록이 있나요? 그렇지 않다면 여기서 조립해도 될까요?

답변1

Ubuntu Linux의 경우 다음과 같은 솔루션이 있습니다.

  1. 부팅 후 X가 초기화되기 전:Ubuntu는 GDM(ubuntu-desktop을 사용하는 경우) 또는 KDM(kubuntu-desktop을 사용하는 경우)에서 X-Windows를 시작합니다.

    GDM/KDM 이전에 스크립트를 실행하려면 고유한 시작 스크립트를 작성해야 합니다. 이를 위해 다음을 읽을 수 있습니다.신생 요리책.

  2. 사용자 전환 후:파일 에 스크립트를 추가해야 합니다 ~/.bashrc.

  3. tty를 통해 로그인한 후:파일 에 스크립트를 추가해야 합니다 ~/.bash_profile.

  4. ssh를 사용하여 로그인한 후(tty를 사용하여 로컬 로그인하는 동안은 아님):이 경우에도 동일한 파일에 스크립트를 추가해야 ~/.bash_profile하지만 이 경우에는 환경 변수가 있는지 테스트 SSH_CONNECTION하고 환경 변수가 있는 경우에만 명령을 실행하십시오.

  5. tty를 통해 로그아웃하기 전에:파일 에 스크립트를 추가해야 합니다 ~/.bash_logout.

  6. 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
.
.
.

관련 정보