Linux에서 시작 시 프로그램 실행을 중지하는 방법 supervisord
apache2 등으로 관리할 수 있도록 시작 시 일부 응용 프로그램을 제거하고 싶습니다 .
답변1
배포판에 따라 chkconfig 또는 update-rc.d 도구를 사용하여 시스템 서비스를 활성화/비활성화합니다.
redhat/suse/mandrake 스타일 시스템의 경우:
sudo chkconfig apache2 off
데비안에서:
sudo update-rc.d -f apache2 remove
자세한 내용은 해당 매뉴얼 페이지를 확인하십시오.
답변2
최신 Ubuntu 시스템과 일부 다른 배포판을 사용하는 경우 기존 init 스크립트와 upstart 스크립트의 조합을 처리해야 할 수도 있습니다. 다른 답변에는 초기화 스크립트 관리가 포함됩니다. 부팅 시 upstart 서비스가 시작되지 않도록 하는 한 가지 방법은 다음과 같습니다.
# mv /etc/init/servicename.conf /etc/init/servicename.conf.disabled
이 방법의 문제점은 다음을 사용하여 서비스를 시작할 수 없다는 것입니다.
# service start servicename
또 다른 방법은 즐겨 사용하는 편집기에서 파일을 열고 다음 servicename.conf
으로 시작하는 모든 줄을 주석 처리하는 것입니다.
start on
즉, 다음과 같이 변경합니다.
#start on ...
여기서 "..."는 이전 "start on" 이후의 내용입니다. 이렇게 하면 "시작" 매개변수를 다시 활성화할 때 해당 매개변수가 무엇인지 기억할 필요가 없습니다.
마지막으로, 새 버전의 upstart가 있는 경우 구성 파일 끝에 "manual"이라는 단어를 추가하면 됩니다. 이 작업은 셸에서 직접 수행할 수 있습니다.
# echo "manual" >> /etc/init/servicename.conf
이렇게 하면 upstart가 파일에서 이전의 "start on" 문구를 무시하게 됩니다.
답변3
모든 시작 서비스 나열
systemctl
시작 시 서비스 실행 중지
sudo systemctl disable servicename
예를 들어 시작 시 SSH 서버 실행을 중지해야 하는 경우
sudo systemctl disable sshd.service
다음 명령을 사용하여 이 기능을 다시 활성화할 수 있습니다.
sudo systemctl enable sshd.service
거의 모든 Linux 배포판은 systemd를 사용하여 시작 서비스를 부팅합니다. 따라서 위 명령은 대부분의 배포판에서 작동합니다.
답변4
Ubuntu 10.04에서는 GUI에서 일부 시작 프로그램을 제어할 수 있습니다.
System→ Preferences→Startup Applications