부팅 시 시작되지 않도록 일부 데몬을 비활성화했습니다. 예를 들어 다음을 사용합니다.
sudo update-rc.d -f postgresql remove
명령이 올바른지 확실하지 않으며 어디서 얻었는지 기억할 수 없습니다.
어쨌든 업그레이드할 때마다postgresql
, 설정이 손실됩니다(즉, 재부팅 시 데몬이 시작됩니다).
답변1
update-rc.d
원래 패키지 업그레이드 스크립트에서 사용되었습니다. remove
패키지 제거 시 호출되고 모든 링크를 제거합니다. defaults
패키지 설치 시 호출 enable
되거나 disable
debconf에 따라 사용될 수 있으며 시스템 관리자에게 유용합니다. 실제로 청소는 remove
서비스를 비활성화하는 데 유용하지 않습니다. 매뉴얼 페이지에서:
일반적인 시스템 관리 실수는 링크를 제거하고 이것이 서비스를 "비활성화"할 것이라고 생각하는 것입니다. 즉, 서비스가 시작되지 않을 것이라고 생각하는 것입니다. 그러나 모든 링크가 제거되면 다음에 패키지가 업그레이드될 때 패키지의 postinst 스크립트가 update-rc.d를 다시 실행하여 공장 기본 위치에 링크를 다시 설치합니다. 서비스를 비활성화하는 올바른 방법은 기본적으로 시작되는 모든 런레벨에서 서비스가 중지되도록 구성하는 것입니다. System V init 시스템에서 이는 서비스의 심볼릭 링크 이름을 S에서 K로 바꾸는 것을 의미합니다.
sudo update-rc.d postgresql disable
rc.d 심볼릭 링크를 유지하지만 K(kill, stop) 접두사가 있기 때문에 원하는 대로 수행됩니다. 이를 복원하는 데 사용합니다 enable
. 일부 서비스는 파일 사용 중지를 지원 /etc/defaults/$service
하지만 안타깝게도 예외도 있습니다. 서비스를 비활성화하는 다른 방법은 파일을 chmod -x하거나 /etc/init.d/$service
파일 맨 위에 삽입하는 것입니다.exit 0
답변2
Tobu가 제공한 답변과 유사한 최상의 솔루션을 명확히 하기 위해 다음을 수행합니다.
- 원하지 않는다
update-rc.d
옵션과 함께 사용됩니다remove
. - 대신
update-rc.d
이disable
옵션과 함께 사용하세요.
예:update-rc.d postgresql disable
또는 를 사용하여 보다 구체적인 다른 서비스를 찾고 비활성화할 수 있습니다 systemctl
.
예:systemctl disable pppd-dns.service
답변3
Tobu의 말이 절대적으로 옳지만, 완전성을 위해 지능적인 개요를 제공하는 도구가 있습니다 sysv-rc-conf
. 복사하여 붙여넣으려면 다음을 수행하세요.
apt-get install sysv-rc-conf
이를 실행하면 sysv-rc-conf
어떤 스크립트가 어떤 런레벨에서 실행되는지 확인할 수 있습니다. 를 통해 서비스를 활성화/비활성화 space
하고 로그아웃 할 수 있습니다 q
.