
Linux 시작 시 실행하고 싶은 스크립트가 있는데, Windows에 시작 폴더가 있고 Linux에도 시작 폴더가 있다는 것을 알고 있습니다. 나는 몇 가지 조사를 해본 결과 상충되는 답변이 많은 다양한 파일을 발견했습니다. 경로:
/etc/systemd/system
사용되는 것 같습니다. 또 다른 하나는 다음과 같습니다
/etc/rc.local
그리고 나는 또한 본 적이 있습니다:
/etc/init.d
나는 단지 모든 또는 적어도 대부분의 Linux 배포판에 존재하는 Windows 시작 폴더와 동등한 Linux 경로를 원합니다. 또한 시작 시 실행되도록 해당 디렉토리에 스크립트를 넣을 수 있기를 원합니다. 이러한 요구 사항을 충족할 수 있는 경로는 무엇입니까?
답변1
대부분의 자동 시작 형태는 사용하는 초기화 시스템(sysv 대 systemd 대 upstart), 데스크탑 환경(GNOME/KDE 대 XDG가 아닌 환경) 등 설치에 따라 다릅니다.
Cron은 대부분의 Linux 시스템에 존재하며 자동 시작에 사용할 수 있습니다. 다음에 한 줄을 추가하세요 /etc/crontab
.
@reboot /usr/bin/blah
/usr/bin/blah
실행하려는 명령은 어디에 있습니까?
로그인할 때마다 프로그램이 시작되도록 하고 XDG 호환 데스크탑 환경(예: GNOME 또는 KDE)을 사용하는 경우 파일 .desktop
을 ~/.config/autostart
. 파일 의 예를 보려면 .desktop
다음을 참조하세요.아치 위키.
또는 Linux 배포판이 systemd를 사용하는 경우 단위 파일을 작성할 수 있습니다. 예를 들어:
[Unit]
Description=autostart something
[Service]
Type=oneshot
ExecStart=/usr/bin/blah
[Install]
WantedBy=multi-user.target
위의 텍스트를 입력 /etc/systemd/system/blah.service
하고 systemctl daemon-reload
루트로 실행하여 서비스를 등록합니다. 그런 다음 실행하여 systemctl enable blah.service
새 서비스의 자동 시작을 활성화합니다.
시스템 단위 파일을 작성하는 방법에 대한 자세한 내용은 다음을 참조하세요.이 링크.