시작시 Upstart 사용자 작업 실행


8

우분투 서버 11.04를 실행 중입니다. 여기에 설명 된대로 Upstart 사용자 작업을 만들었습니다 .

내 파일은 다음과 같습니다 /home/myuser/.init/sensors.conf.

start on started mysql
stop on stopping mysql


chdir /home/myuser/mydir/project
exec /home/myuser/mydir/env/bin/python /home/myuser/mydir/project/manage.py sensors

respawn

respawn limit 10 90

으로 myuser는 완벽하게 작동를 미세 나는 정지를 시작하고 작업을 다시로드 할 수 있습니다 :

$ start sensors
sensors start/running, process 1332
$ stop sensors
sensors stop/waiting

문제는 부팅시 작업이 자동으로 시작되지 않는다는 것 mysql입니다. 새로 부팅 한 후 mysql실행 중이지만 내 sensors작업이 실행 되지 않습니다.

이상한 점은 부팅시 작업이 시작되지 않지만 sudo다시 시작 mysql하는 데 실제로 작업 을 시작 한다는 것입니다. 다음 명령은 myuser새로 시작할 때 와 같이 실행됩니다 .

$ status sensors
sensors stop/waiting
$ sudo restart mysql
mysql start/running, process 1209
$ status sensors
sensors start/running, process 1229

Upstart 사용자 작업에 대한 설명서는 매우 제한적입니다. 시스템 시작시 사용자 작업을 자동으로 시작하는 올바른 기술은 무엇입니까?

나는 rc.local그것을 시작하기 위해 무언가를 던질 수 있다는 것을 안다 . 또는 나의 sensors.conf쪽으로 움직일 수 는 /etc/init있지만 Upstart 만 사용하는 방법이 있다면 궁금하다.

답변:


8

문제는 사용자가 initctl명령 중 하나를 실행하여 Upstart 세션을 만들 때까지 사용자 작업이 Upstart로로드되지 않는다는 것입니다 .

http://bradleyayers.blogspot.com.au/2012/04/enabling-upstart-user-jobs-to-start-at.html 에 자세히 설명되어 있으며 Upstart 작업을 작성했습니다. 문제.


upstart.ubuntu.com/cookbook/…에 문서화 된 다른 방법이 있습니다. 버그가 있지만 "start session_init"를 "start session-init"로 변경해야합니다.
natevw

-1

같은 소스를 보면 /etc/init/mysql.confhttp://upstart.ubuntu.com/cookbook/#start-on 이 날 것으로 보인다 당신이 당신의 변경해야 start on이런 일에 라인을 :

start on (mysql and runlevel [2345])

나는 upstart에 문서화가 부족하다는 데 동의하지 않지만 때로는 문서를 이해하는 데 어려움을 겪고 있습니다. 나는 보통 작동 할 때까지 시행 착오를합니다. 위의 해결책은 실제로 과잉 일 수 있습니다 ... 이것이 충분할만큼 간단한 것 :

start on mysql

upstart는 일반적으로 문서가 부족하지 않으며, /home/$USER/.init에있는 사용자 작업 (/ etc / init에있는 작업이 아님)에 관한 문서가 많지 않습니다.
dgel

나는 당신의 제안을 시도했지만 아무런 차이가 없었습니다. 그것은 내 start on라인에 문제가 아니지만 upstart는 시작시 / etc / init 만로드하지만 사용자 init 파일은로드하지 않는다는 것입니다.$HOME/.init
dgel

죄송합니다.의 사용자 작업이 아닌의 사용자 작업이 누락되었습니다 /etc/init. 문서가 부족한 것으로 보이며 ~/.init스크립트가 시작 되도록하는 방법을 잘 모르겠습니다 .
Carl Zulauf

내가 찾은 문서 $HOME/.init는 기본적으로 작업이 활성화되어 있지 않으며 일부 변경이 /etc/dbus-1/system.d/Upstart.conf필요할 수 있음을 나타냅니다 . upstart.ubuntu.com/cookbook/#run-a-job-as-a-different-user
Carl Zulauf
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.