데비안에서 부팅시 데몬 시작을 중지하는 방법


16

부팅시 시작할 수없는 데몬이 몇 가지 있습니다. 예를 들어 다음을 사용합니다.

 sudo update-rc.d -f postgresql remove

그 명령이 올바른지 확실하지 않으며 어디에서 왔는지 기억하지 못합니다.

어쨌든 업그레이드 할 때마다 postgresql설정이 손실됩니다 (즉, 데몬은 재부팅시 시작됩니다).


1
SysVinit를 사용하는 데비안에서는을 좋아 file-rc합니다. 심볼릭 링크를 관리하는 대신 실행 수준 구성으로 텍스트 파일을 관리합니다.
Gilles 'SO- 악의를 멈춰라'

답변:


22

update-rc.d처음에는 패키지 업그레이드 스크립트에서 사용되었습니다. remove패키지 제거시 호출되고 모든 링크를 제거 하거나 defaults패키지 설치시 호출 enable되거나 disabledebconf에 따라 사용될 수 있으며 sysadmins에게 유용합니다. 정리 remove는 실제로 서비스를 비활성화하는 데 유용하지 않습니다. 매뉴얼 페이지에서 :

일반적인 시스템 관리 오류는 서비스를 "비활성화"하는 것, 즉 서비스 시작을 방해한다는 생각으로 링크를 삭제하는 것입니다. 그러나 모든 링크가 삭제 된 경우 다음에 패키지를 업그레이드 할 때 패키지의 postinst 스크립트는 update-rc.d를 다시 실행하여 공장 기본 위치에 링크를 다시 설치합니다. 서비스를 비활성화하는 올바른 방법은 기본적으로 서비스가 시작된 모든 실행 수준에서 서비스를 중지 된 것으로 구성하는 것입니다. System V init 시스템에서 이는 서비스의 기호 링크 이름을 S에서 K로 바꾸는 것을 의미합니다.

sudo update-rc.d postgresql disablerc.d 심볼릭 링크를 유지하지만 K (killed, stop) 접두사를 유지하므로 원하는 것을 수행합니다. 로 되돌립니다 enable. 일부 서비스는 /etc/defaults/$service파일 에서 비활성화되는 것을 지원 하지만 슬프게도 예외가 있습니다. 서비스를 비활성화하는 다른 방법은 /etc/init.d/$service파일 을 chmod -x 하거나 exit 0맨 위에 파일을 삽입하는 것입니다.


6

Tobu가 제공 한 답변과 유사한 최상의 솔루션을 명확히하기 위해 :

  1. 옵션 update-rc.d과 함께 사용 하지 마십시오remove .
  2. 대신 옵션 update-rc.d과 함께 사용 하십시오 disable.

예: update-rc.d postgresql disable


또한을 사용하여보다 구체적인 다른 서비스를 찾고 비활성화 할 수도 있습니다 systemctl.

예: systemctl disable pppd-dns.service


REMOVE 옵션을 사용하지 말 것을 권고하는 +1
PYK

3

Tobu는 옳습니다. 그러나 완전성을 위해 다음과 같은 현명한 개요를 제공하는 도구가 있습니다 sysv-rc-conf. 복사 및 패턴 :

apt-get install sysv-rc-conf

실행 sysv-rc-conf하면 어떤 스크립트가 어떤 실행 레벨에서 실행되는지 볼 수 있습니다. 당신은 활성화 / 비활성화를 통해 서비스 할 수 space와 함께 종료합니다 q.


2
나는 또한 rcconf표준 저장소에서을 좋아한다 . 이들 중 어느 것도 upstart에서 작동하지 않지만 우분투에서는 기본값입니다. 많은 것들이 여전히 레거시 초기화를 사용하지만.
JM Becker
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.