Скрипт в /etc/init.d не запускается при запуске

Я хотел, чтобы мой демон Dropbox запускался автоматически при запуске. Я сделал это через терминал, то есть я (1) переместил его в /etc/init.d, (2) сделал его исполняемым и (3) запустил sudo update-rc.d dropbox.sh defaults. Итак, у нас есть

$ ll /etc/init.d/dropbox.sh 
-rwxr-xr-x 1 root root 38 Aug 16 00:18 /etc/init.d/dropbox.sh*

$ cat /etc/init.d/dropbox.sh 
#! /bin/sh
~/.dropbox-dist/dropboxd &

$ ll ~/.dropbox-dist/dropboxd
-rwxr-xr-x 1 skrd skrd 258 Jun  6 03:03 /home/skrd/.dropbox-dist/dropboxd

Однако Dropbox не запускается при запуске.

Обратите внимание, что при вызове /etc/init.d/dropbox.sh демон dropbox запускается без заминки.

Я знаю, что в Ubuntu есть GUI для этого, и я мог бы просто добавить туда скрипт dropbox, но мне интересно, почему мои команды терминала не сделали этого? Разве это не более стандартно для машин с Linux?

6
задан 18 August 2013 в 11:13

1 ответ

Это может быть хороший путь, если Вы используете insserv вместо sudo update-rc.d dropbox.sh defaults.

sudo insserv

От man insserv:

insserv  is a low level tool used by update-rc.d which enables an installed sys‐
tem init script (`boot script')

Если Вы добираетесь command not found ошибка, можно зафиксировать путем выполнения следующей команды:

sudo ln -s /usr/lib/insserv/insserv /sbin/insserv

Посмотрите insserv -h для справки.

2
ответ дан 18 August 2013 в 11:13

Другие вопросы по тегам:

Похожие вопросы: