Проблемы с запуском скрипта init.d

В соответствии с документацией вы можете использовать зашифрованный своп с фиксированным ключом, который необходим каждый раз, когда он запускается или возобновляется из спящего режима.

3
задан 27 October 2010 в 17:28

60 ответов

Вы можете попытаться использовать команду insserv. Из команды «man insserv» на установке 10.10 я могу прочитать:

insserv - Enable an installed system init script.
2
ответ дан 26 May 2018 в 00:46
  • 1
    Ах бриллиант. Это сделало трюк ... – Will 27 October 2010 в 19:15
  • 2
    как? просто работает sudo insserv? – Pitto 3 January 2011 в 00:54
  • 3
    Я получаю сообщение «insserv: warning: script» K20acpi-support. Отсутствующие теги LSB и переопределения. Сценарий, который вы пытаетесь вызвать, был преобразован в задание Upstart, но lsb-header не поддерживается для заданий Upstart " Ошибка :( – Pitto 3 January 2011 в 13:07
  • 4
    Да, этот ответ требует более подробной информации. Из man insserv: «insserv - инструмент низкого уровня, используемый update-rc.d ... Не рекомендуется выполнять insserv напрямую ... update-rc.d - рекомендуемый интерфейс для управления скриптами инициализации. & Quot; Другой ответ, предполагающий sudo update-rc.d couchpotato defaults, кажется предпочтительным. – Sparhawk 17 July 2014 в 15:34

Вы можете попытаться использовать команду insserv. Из команды «man insserv» на установке 10.10 я могу прочитать:

insserv - Enable an installed system init script.
2
ответ дан 25 July 2018 в 23:00

Вы можете попытаться использовать команду insserv. Из команды «man insserv» на установке 10.10 я могу прочитать:

insserv - Enable an installed system init script.
2
ответ дан 27 July 2018 в 02:00

Вы можете попытаться использовать команду insserv. Из команды «man insserv» на установке 10.10 я могу прочитать:

insserv - Enable an installed system init script.
2
ответ дан 31 July 2018 в 13:11

Вы можете попытаться использовать команду insserv. Из команды «man insserv» при установке 10.10 я могу прочитать:

  insserv - включить установленный сценарий инициализации системы.   
2
ответ дан 2 August 2018 в 04:22

Вы можете попытаться использовать команду insserv. Из команды «man insserv» при установке 10.10 я могу прочитать:

  insserv - включить установленный сценарий инициализации системы.   
2
ответ дан 4 August 2018 в 20:53

Вы можете попытаться использовать команду insserv. Из команды «man insserv» при установке 10.10 я могу прочитать:

  insserv - включить установленный сценарий инициализации системы.   
2
ответ дан 6 August 2018 в 04:27

Вы можете попытаться использовать команду insserv. Из команды «man insserv» при установке 10.10 я могу прочитать:

  insserv - включить установленный сценарий инициализации системы.   
2
ответ дан 7 August 2018 в 22:34

Вы можете попытаться использовать команду insserv. Из команды «man insserv» при установке 10.10 я могу прочитать:

  insserv - включить установленный сценарий инициализации системы.   
2
ответ дан 10 August 2018 в 10:41

Вы можете попытаться использовать команду insserv. Из команды «man insserv» при установке 10.10 я могу прочитать:

  insserv - включить установленный сценарий инициализации системы.   
2
ответ дан 13 August 2018 в 17:14
  • 1
    Ах бриллиант. Это сделало трюк ... – Will 27 October 2010 в 19:15
  • 2
    как? просто работает sudo insserv? – Pitto 3 January 2011 в 00:54
  • 3
    Я получаю сообщение «insserv: warning: script» K20acpi-support. Отсутствующие теги LSB и переопределения. Сценарий, который вы пытаетесь вызвать, был преобразован в задание Upstart, но lsb-header не поддерживается для заданий Upstart & quot; Ошибка :( – Pitto 3 January 2011 в 13:07
  • 4
    Да, этот ответ требует более подробной информации. Из man insserv : «insserv - инструмент низкого уровня, используемый update-rc.d ... Не рекомендуется выполнять insserv напрямую ... update-rc.d - рекомендуемый интерфейс для управления скриптами инициализации. & Quot; Другой ответ, предлагающий sudo update-rc.d couchpotato defaults , кажется предпочтительным. – Sparhawk 17 July 2014 в 15:34

Вы можете попробовать запустить это в терминале:

sudo chmod 755 /etc/init.d/couchpotato

sudo update-rc.d couchpotato defaults

================================

И когда вы хотите отключить его от запуска при запуске:

sudo update-rc.d -f couchpotato remove

Для получения дополнительной информации выполните:

man update-rc.d [!d7 ]

8
ответ дан 26 May 2018 в 00:46
  • 1
    Я уже chmod-ed его с + x и update-rc.d. Я получаю «Ссылки на запуск / останов системы для /etc/init.d/couchpotato уже существуют». – Will 27 October 2010 в 18:08
  • 2
    Мне не повезло с этим предложением ... – Pitto 3 January 2011 в 01:26

Я никогда не мог заставить исполняемый скрипт init.d работать. Я мог бы запустить его просто отлично, но init.d начал бы couchpotato, но я никогда не мог подключиться к нему. Я пошел вперед и создал для себя свой грязный сценарий. Это должно работать, если вы используете путь ~ / .couchpotato для своего installdir.

### BEGIN INIT INFO
# Provides:          CouchPotato application instance
# Required-Start:    $local_fs $network $remote_fs
# Required-Stop:     $local_fs $network $remote_fs
# Should-Start:      $NetworkManager
# Should-Stop:       $NetworkManager
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts instance of CouchPotato
# Description:       starts instance of CouchPotato using start-stop-daemon

### END INIT INFO

USER="youruser"

case "$1" in

  start)
        echo "Starting $DESC"
        /home/micdawg/.couchpotato/CouchPotato.py &
        ;;
  stop)
        echo "Stopping $DESC" 
        PID=`ps -ef | grep CouchPotato.py | grep -v grep | awk '{print $2}'`
        kill -9 $PID 
        ;;

  restart|force-reload)
        echo "Restarting $DESC"
        PID=`ps -ef | grep CouchPotato.py | grep -v grep | awk '{print $2}'`
        kill -9 $PID 
        sleep 15
        /home/micdawg/.couchpotato/CouchPotato.py &
        ;;
  *)
        N=/etc/init.d/$NAME
        echo "Usage: $N {start|stop|restart|force-reload}" >&2
        exit 1
        ;;
esac
exit 0
2
ответ дан 26 May 2018 в 00:46

от man: информация о запуске в скрипте init.d используется заголовок комментария LSB (..). Такой заголовок должен присутствовать в скриптах init.d. Подробнее о формате заголовка LSB см. На странице insserv.

Пример:

### BEGIN INIT INFO
# Provides: apache2
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# X-Interactive: true
# Short-Description: Start/stop apache2 web server
### END INIT INFO 
1
ответ дан 26 May 2018 в 00:46

В принятом ответе предполагается, что «выскочка» используется для запуска процессов при загрузке системы. Это не всегда так. Я использую Ubuntu 9.04 Минимальный запуск на виртуальном частном сервере, и это не использует выскочку.

В этом случае, чтобы система заметила и запустила скрипты в /etc/init.d, вам нужно для запуска update-rc.d, который создал символические ссылки на ваш скрипт inet.d в тех местах, где система будет искать инструкции при загрузке.

Что-то вроде этого:

update-rc.d couchpotato defaults 92

92 является разумным значением для приоритета, задерживая запуск вашего скрипта до тех пор, пока не будет запущен другой важный материал.

Вот более подробная информация о запуске update-rc.d

1
ответ дан 26 May 2018 в 00:46
  • 1
    Благодарю вас! Я не уверен, что couchpotato (может быть, просто пример?), Но для моей настройки это казалось необходимым для работы Zoneminder ... его значение по умолчанию для rc.d 20 было слишком низким [высокий приоритет] для него для запуска правильно. – gatoatigrado 7 October 2014 в 10:45

Если вы не понимаете, почему ваш сервис не запускается при загрузке. Однако при запуске вручную с помощью команды service <your service> start он запускается совершенно нормально. Затем попробуйте перенаправить стандартный вывод и вывод ошибок в некоторый файл. Это может дать вам понять, почему он не запускается

, например. внутри вашего скрипта

case "$1" in
  start)
    echo "Starting Service "
    <your command to start the service > /tmp/bootservice.log 2>&1
    ;;
  stop)
    echo "Stopping Service "
    <your command to start the service > /tmp/bootservice.log 2>&1
    ;;
  *)
    echo "Usage: /etc/init.d/test {start|stop}"
    exit 1
    ;;
esac

exit 0
1
ответ дан 26 May 2018 в 00:46

от man: информация о запуске в скрипте init.d используется заголовок комментария LSB (..). Такой заголовок должен присутствовать в скриптах init.d. Подробнее о формате заголовка LSB см. На странице insserv.

Пример:

### BEGIN INIT INFO # Provides: apache2 # Required-Start: $local_fs $remote_fs $network $syslog # Required-Stop: $local_fs $remote_fs $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # X-Interactive: true # Short-Description: Start/stop apache2 web server ### END INIT INFO
1
ответ дан 25 July 2018 в 23:00

Вы можете попробовать запустить это в терминале:

sudo chmod 755 /etc/init.d/couchpotato

sudo update-rc.d couchpotato defaults

================================

И когда вы хотите отключить его от запуска при запуске:

sudo update-rc.d -f couchpotato remove

Для получения дополнительной информации выполните:

man update-rc.d

8
ответ дан 25 July 2018 в 23:00
  • 1
    Я уже chmod-ed его с + x и update-rc.d. Я получаю «Ссылки на запуск / останов системы для /etc/init.d/couchpotato уже существуют». – Will 27 October 2010 в 18:08
  • 2
    Мне не повезло с этим предложением ... – Pitto 3 January 2011 в 01:26

Я никогда не мог заставить исполняемый скрипт init.d работать. Я мог бы запустить его просто отлично, но init.d начал бы couchpotato, но я никогда не мог подключиться к нему. Я пошел вперед и создал для себя свой грязный сценарий. Это должно работать, если вы используете путь ~ / .couchpotato для своего installdir.

### BEGIN INIT INFO # Provides: CouchPotato application instance # Required-Start: $local_fs $network $remote_fs # Required-Stop: $local_fs $network $remote_fs # Should-Start: $NetworkManager # Should-Stop: $NetworkManager # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts instance of CouchPotato # Description: starts instance of CouchPotato using start-stop-daemon ### END INIT INFO USER="youruser" case "$1" in start) echo "Starting $DESC" /home/micdawg/.couchpotato/CouchPotato.py & ;; stop) echo "Stopping $DESC" PID=`ps -ef | grep CouchPotato.py | grep -v grep | awk '{print $2}'` kill -9 $PID ;; restart|force-reload) echo "Restarting $DESC" PID=`ps -ef | grep CouchPotato.py | grep -v grep | awk '{print $2}'` kill -9 $PID sleep 15 /home/micdawg/.couchpotato/CouchPotato.py & ;; *) N=/etc/init.d/$NAME echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0
2
ответ дан 25 July 2018 в 23:00

Если вы не понимаете, почему ваш сервис не запускается при загрузке. Однако при запуске вручную с помощью команды service <your service> start он запускается совершенно нормально. Затем попробуйте перенаправить стандартный вывод и вывод ошибок в некоторый файл. Это может дать вам понять, почему он не запускается

, например. внутри вашего скрипта

case "$1" in start) echo "Starting Service " <your command to start the service > /tmp/bootservice.log 2>&1 ;; stop) echo "Stopping Service " <your command to start the service > /tmp/bootservice.log 2>&1 ;; *) echo "Usage: /etc/init.d/test {start|stop}" exit 1 ;; esac exit 0
1
ответ дан 25 July 2018 в 23:00

В принятом ответе предполагается, что «выскочка» используется для запуска процессов при загрузке системы. Это не всегда так. Я использую Ubuntu 9.04 Минимальный запуск на виртуальном частном сервере, и это не использует выскочку.

В этом случае, чтобы система заметила и запустила скрипты в /etc/init.d, вам нужно для запуска update-rc.d, который создал символические ссылки на ваш скрипт inet.d в тех местах, где система будет искать инструкции при загрузке.

Что-то вроде этого:

update-rc.d couchpotato defaults 92

92 является разумным значением для приоритета, задерживая запуск вашего скрипта до тех пор, пока не будет запущен другой важный материал.

Вот более подробная информация о запуске update-rc.d

1
ответ дан 25 July 2018 в 23:00
  • 1
    Благодарю вас! Я не уверен, что couchpotato (может быть, просто пример?), Но для моей настройки это казалось необходимым для работы Zoneminder ... его значение по умолчанию для rc.d 20 было слишком низким [высокий приоритет] для него для запуска правильно. – gatoatigrado 7 October 2014 в 10:45

от man: информация о запуске в скрипте init.d используется заголовок комментария LSB (..). Такой заголовок должен присутствовать в скриптах init.d. Подробнее о формате заголовка LSB см. На странице insserv.

Пример:

### BEGIN INIT INFO # Provides: apache2 # Required-Start: $local_fs $remote_fs $network $syslog # Required-Stop: $local_fs $remote_fs $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # X-Interactive: true # Short-Description: Start/stop apache2 web server ### END INIT INFO
1
ответ дан 27 July 2018 в 02:00

Вы можете попробовать запустить это в терминале:

sudo chmod 755 /etc/init.d/couchpotato

sudo update-rc.d couchpotato defaults

================================

И когда вы хотите отключить его от запуска при запуске:

sudo update-rc.d -f couchpotato remove

Для получения дополнительной информации выполните:

man update-rc.d

8
ответ дан 27 July 2018 в 02:00
  • 1
    Я уже chmod-ed его с + x и update-rc.d. Я получаю «Ссылки на запуск / останов системы для /etc/init.d/couchpotato уже существуют». – Will 27 October 2010 в 18:08
  • 2
    Мне не повезло с этим предложением ... – Pitto 3 January 2011 в 01:26

Я никогда не мог заставить исполняемый скрипт init.d работать. Я мог бы запустить его просто отлично, но init.d начал бы couchpotato, но я никогда не мог подключиться к нему. Я пошел вперед и создал для себя свой грязный сценарий. Это должно работать, если вы используете путь ~ / .couchpotato для своего installdir.

### BEGIN INIT INFO # Provides: CouchPotato application instance # Required-Start: $local_fs $network $remote_fs # Required-Stop: $local_fs $network $remote_fs # Should-Start: $NetworkManager # Should-Stop: $NetworkManager # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts instance of CouchPotato # Description: starts instance of CouchPotato using start-stop-daemon ### END INIT INFO USER="youruser" case "$1" in start) echo "Starting $DESC" /home/micdawg/.couchpotato/CouchPotato.py & ;; stop) echo "Stopping $DESC" PID=`ps -ef | grep CouchPotato.py | grep -v grep | awk '{print $2}'` kill -9 $PID ;; restart|force-reload) echo "Restarting $DESC" PID=`ps -ef | grep CouchPotato.py | grep -v grep | awk '{print $2}'` kill -9 $PID sleep 15 /home/micdawg/.couchpotato/CouchPotato.py & ;; *) N=/etc/init.d/$NAME echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0
2
ответ дан 27 July 2018 в 02:00

Если вы не понимаете, почему ваш сервис не запускается при загрузке. Однако при запуске вручную с помощью команды service <your service> start он запускается совершенно нормально. Затем попробуйте перенаправить стандартный вывод и вывод ошибок в некоторый файл. Это может дать вам понять, почему он не запускается

, например. внутри вашего скрипта

case "$1" in start) echo "Starting Service " <your command to start the service > /tmp/bootservice.log 2>&1 ;; stop) echo "Stopping Service " <your command to start the service > /tmp/bootservice.log 2>&1 ;; *) echo "Usage: /etc/init.d/test {start|stop}" exit 1 ;; esac exit 0
1
ответ дан 27 July 2018 в 02:00

В принятом ответе предполагается, что «выскочка» используется для запуска процессов при загрузке системы. Это не всегда так. Я использую Ubuntu 9.04 Минимальный запуск на виртуальном частном сервере, и это не использует выскочку.

В этом случае, чтобы система заметила и запустила скрипты в /etc/init.d, вам нужно для запуска update-rc.d, который создал символические ссылки на ваш скрипт inet.d в тех местах, где система будет искать инструкции при загрузке.

Что-то вроде этого:

update-rc.d couchpotato defaults 92

92 является разумным значением для приоритета, задерживая запуск вашего скрипта до тех пор, пока не будет запущен другой важный материал.

Вот более подробная информация о запуске update-rc.d

1
ответ дан 27 July 2018 в 02:00
  • 1
    Благодарю вас! Я не уверен, что couchpotato (может быть, просто пример?), Но для моей настройки это казалось необходимым для работы Zoneminder ... его значение по умолчанию для rc.d 20 было слишком низким [высокий приоритет] для него для запуска правильно. – gatoatigrado 7 October 2014 в 10:45

от man: информация о запуске в скрипте init.d используется заголовок комментария LSB (..). Такой заголовок должен присутствовать в скриптах init.d. Подробнее о формате заголовка LSB см. На странице insserv.

Пример:

### BEGIN INIT INFO # Provides: apache2 # Required-Start: $local_fs $remote_fs $network $syslog # Required-Stop: $local_fs $remote_fs $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # X-Interactive: true # Short-Description: Start/stop apache2 web server ### END INIT INFO
1
ответ дан 31 July 2018 в 13:11

Вы можете попробовать запустить это в терминале:

sudo chmod 755 /etc/init.d/couchpotato

sudo update-rc.d couchpotato defaults

================================

И когда вы хотите отключить его от запуска при запуске:

sudo update-rc.d -f couchpotato remove

Для получения дополнительной информации выполните:

man update-rc.d

8
ответ дан 31 July 2018 в 13:11
  • 1
    Я уже chmod-ed его с + x и update-rc.d. Я получаю «Ссылки на запуск / останов системы для /etc/init.d/couchpotato уже существуют». – Will 27 October 2010 в 18:08
  • 2
    Мне не повезло с этим предложением ... – Pitto 3 January 2011 в 01:26

Я никогда не мог заставить исполняемый скрипт init.d работать. Я мог бы запустить его просто отлично, но init.d начал бы couchpotato, но я никогда не мог подключиться к нему. Я пошел вперед и создал для себя свой грязный сценарий. Это должно работать, если вы используете путь ~ / .couchpotato для своего installdir.

### BEGIN INIT INFO # Provides: CouchPotato application instance # Required-Start: $local_fs $network $remote_fs # Required-Stop: $local_fs $network $remote_fs # Should-Start: $NetworkManager # Should-Stop: $NetworkManager # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts instance of CouchPotato # Description: starts instance of CouchPotato using start-stop-daemon ### END INIT INFO USER="youruser" case "$1" in start) echo "Starting $DESC" /home/micdawg/.couchpotato/CouchPotato.py & ;; stop) echo "Stopping $DESC" PID=`ps -ef | grep CouchPotato.py | grep -v grep | awk '{print $2}'` kill -9 $PID ;; restart|force-reload) echo "Restarting $DESC" PID=`ps -ef | grep CouchPotato.py | grep -v grep | awk '{print $2}'` kill -9 $PID sleep 15 /home/micdawg/.couchpotato/CouchPotato.py & ;; *) N=/etc/init.d/$NAME echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0
2
ответ дан 31 July 2018 в 13:11

Если вы не понимаете, почему ваш сервис не запускается при загрузке. Однако при запуске вручную с помощью команды service <your service> start он запускается совершенно нормально. Затем попробуйте перенаправить стандартный вывод и вывод ошибок в некоторый файл. Это может дать вам понять, почему он не запускается

, например. внутри вашего скрипта

case "$1" in start) echo "Starting Service " <your command to start the service > /tmp/bootservice.log 2>&1 ;; stop) echo "Stopping Service " <your command to start the service > /tmp/bootservice.log 2>&1 ;; *) echo "Usage: /etc/init.d/test {start|stop}" exit 1 ;; esac exit 0
1
ответ дан 31 July 2018 в 13:11

В принятом ответе предполагается, что «выскочка» используется для запуска процессов при загрузке системы. Это не всегда так. Я использую Ubuntu 9.04 Минимальный запуск на виртуальном частном сервере, и это не использует выскочку.

В этом случае, чтобы система заметила и запустила скрипты в /etc/init.d, вам нужно для запуска update-rc.d, который создал символические ссылки на ваш скрипт inet.d в тех местах, где система будет искать инструкции при загрузке.

Что-то вроде этого:

update-rc.d couchpotato defaults 92

92 является разумным значением для приоритета, задерживая запуск вашего скрипта до тех пор, пока не будет запущен другой важный материал.

Вот более подробная информация о запуске update-rc.d

1
ответ дан 31 July 2018 в 13:11
  • 1
    Благодарю вас! Я не уверен, что couchpotato (может быть, просто пример?), Но для моей настройки это казалось необходимым для работы Zoneminder ... его значение по умолчанию для rc.d 20 было слишком низким [высокий приоритет] для него для запуска правильно. – gatoatigrado 7 October 2014 в 10:45

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

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