시작시 서비스 제거


9

개발 컴퓨터 (노트북)에 mysql을 (repos에서) 설치했으며 매 부팅마다 데몬을 실행할 필요가 없습니다. /etc/init/mysql.conf를 /etc/init/mysql.conf.old에 복사 한 다음 "start on"행 다음에 나오는 모든 것을 제거했습니다. 그러나 재부팅하면 더 이상 upstart를 통해 mysqld를 시작할 수 없습니다.

$ sudo service mysql start
start: Unknown job: mysql

이것도 실패합니다 (이 시점에서 아무것도 시도하지 마십시오).

$ sudo service mysql restart
stop: Unknown job: mysql
start: Unknown job: mysql

이것은 내 시작 스크립트입니다.

# /etc/init/mysql.conf
....
start on
stop on starting rc RUNLEVEL=[016]

이것이 기본 스크립트입니다.

# /etc/init/mysql.conf.old
....
start on runlevel [2345]
stop on starting rc RUNLEVEL=[016]

지금까지 읽은 모든 내용은 부팅시 서비스가 시작되지 않도록하는 방법입니다. 이 작업을 수행하는 더 좋은 방법이 있습니까? 아니면 upstart 스크립트에서 실수를 했습니까?

업데이트 : 백업 conf 파일을 / etc / init에서 옮기고 충돌이 있었지만 시동이 여전히 있다고 생각하여 재부팅했습니다.Unknown job: mysql


/ var / log / syslog를 확인하십시오. 아마도 /etc/init/mysql.conf에 구문 문제가있을 것입니다. 'init-checkconf /etc/init/mysql.conf'를 시도해보십시오
— SpamapS

답변:


17

Ubuntu 11.04 이상에 manual있는 경우 / etc / init에서 키워드 및 .override 파일을 사용하여 자동 시작을 비활성화 할 수 있습니다 .

sudo sh -c 'echo manual >> /etc/init/mysql.override'

manualstart on작업 구성에서 스탠자를 효과적으로 제거합니다 .

Ubuntu 10.04를 사용하는 경우 다음을 수행 할 수 있습니다.

sudo sh -c 'echo start on never >> /etc/init/mysql.conf'

파일 의 마지막 start on 은 이전의 것을 재정의하므로라는 이벤트가 없다고 가정하지만 작동해야합니다 never.


0

에서 이 게시물 : 섹션의 요구 "에서 시작하여"구문의 완전하고 정확해야합니다.

start on runlevel [!0123456]

이 줄은 실행 수준이 [0,1,2,3,4,5,6]에 없을 때 실행됨을 의미합니다 (이것은 유일한 실행 수준이므로 실행되지 않습니다).

이 게시물에 chkconfig따라 다른 옵션을 사용 하고 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.