다음과 같은 기본 구조를 가진 사용자 정의 신생 작업이 있습니다.
description "ulfs_bar_example"
author "Ulf"
# Only run at runlevel 2 (Default multiuser)
start on runlevel 2
stop on runlevel [!2]
# Keep it alive
respawn
chdir /storage/_foo/bar
exec sudo -u the_user /storage/_foo/venv/bin/python /storage/_foo/bar/the_app.py
이는 Ubuntu 14.04.5 LTS
의 인스턴스 에서 실행됩니다 VirtualBox 5.0.26
.
/storage/_foo/
게스트 디스크에 존재
bar/
호스트 시스템(또한 Ubuntu 14.04.5 LTS
)에 존재하며 다음을 통해 마운트됩니다.게스트 추가그리고 일부 심볼릭 링크는/storage/_foo/
$ cd /storage/_foo
$ ls -alF
...
lrwxrwxrwx 1 the_user code 43 aug 18 14:23 bar -> /mnt/bar_at_host
...
다음과 같이 게스트가 부팅된 후 문제 없이 작업을 시작할 수 있습니다.
$ sudo start ulfs_bar_example
그러나 conf 파일에 명시된 대로 일반 부팅 시 런레벨 2가 입력되면 작업이 시작되기를 원합니다. 그런데 작업이 시작되지 않아서 마운트에 문제가 있는 것 같습니다. 나는 dmesg
이것을 얻습니다 :
[ 8.793493] init: Failed to spawn ulfs_bar_example main process: unable to change working directory: No such file or directory
성공하지 못한 채 변경을 시도했습니다.
start on runlevel 2
이와 유사한 다양한 것들:
start on (local-filesystems and runlevel 2)
내가 도대체 뭘 잘못하고있는 겁니까? 이 문제를 어떻게 해결할 수 있나요?
답변1
시스템이 다른 런레벨이 아닌 런레벨 2로 진입하고 있다고 확신합니까? 시도해 보셨나요 start on runlevel [2345]
?