почему обновление-rc.d не принимает мой init сценарий

Я хочу запуститься noip.com клиент dyndns на начальной загрузке и использует предоставленный debian.noip2.sh сценарий (который запускает клиент с оболочки очень хорошо). Я скопировал его в /etc/init.d, сделанный принадлежавшим корню и дал его 755 полномочия. Теперь, когда я хочу установить его, я добираюсь:

# update-rc.d debian.noip2.sh defaults
insserv: warning: script 'K01debian.noip2.sh' missing LSB tags and overrides
insserv: warning: script 'debian.noip2.sh' missing LSB tags and overrides
insserv: warning: script 'noip' missing LSB tags and overrides
insserv: script virtualbox: service vboxdrv already provided!
insserv: script virtualbox: service virtualbox already provided!

сценарий похож:

# cat /etc/init.d/debian.noip2.sh 
#! /bin/sh
# /etc/init.d/noip2.sh

# Supplied by no-ip.com
# Modified for Debian GNU/Linux by Eivind L. Rygge <eivind@rygge.org>
# corrected 1-17-2004 by Alex Docauer <alex@docauer.net>

# . /etc/rc.d/init.d/functions  # uncomment/modify for your killproc

DAEMON=/usr/local/bin/noip2
NAME=noip2

test -x $DAEMON || exit 0

case "$1" in
    start)
    echo -n "Starting dynamic address update: "
    start-stop-daemon --start --exec $DAEMON
    echo "noip2."
    ;;
    stop)
    echo -n "Shutting down dynamic address update:"
    start-stop-daemon --stop --oknodo --retry 30 --exec $DAEMON
    echo "noip2."
    ;;

    restart)
    echo -n "Restarting dynamic address update: "
    start-stop-daemon --stop --oknodo --retry 30 --exec $DAEMON
    start-stop-daemon --start --exec $DAEMON
    echo "noip2."
    ;;

    *)
    echo "Usage: $0 {start|stop|restart}"
    exit 1
esac
exit 0

Как я получаю зафиксированный?

0
задан 10 October 2016 в 18:06

2 ответа

, Как я получаю зафиксированный?

Выбрасывают его полностью. Вам не нужен он ни в какой форме.

Затем остановка, пытающаяся использовать rc система, которая была дважды заменена на Ubuntu, также. Вам не нужно update-rc.d здесь, также.

Это теперь 2016, и первое правило для миграции на systemd применяется. Кто-то уже сделал это. В данном случае Michael Nikitochkin сделал это год назад , среди других (такой как Jeroen Doggen , Efstathios Iosifidis, и некоторые неназванные люди ):

[Unit]
Description=NOIP Dynamic IP
Documentation=https://askubuntu.com/a/835318/43344

[Service]
ExecStart=/usr/local/bin/noip2

[Install]
WantedBy=multi-user.target

Дополнительные материалы для чтения

4
ответ дан 28 September 2019 в 10:34

Во-первых, необходимо создать сценарий запуска systemd:

debian.noip2.service

И место это в /etc/systemd/system/ каталог.

Один пример такого сценария запуска systemd следующий:

[Unit]
After=network.target

[Service]
ExecStart=/usr/local/bin/debian.noip2.sh

[Install]
WantedBy=default.target

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

ExecStart: Это поле обеспечивает полный путь, который выполняет фактический сценарий, чтобы быть.

WantedBy: В то, какая начальная загрузка предназначается для systemd единицы, должно быть установлено

, Настраивают и Установка:

Откройте терминал и работайте:

exec sudo -i
cp debian.noip2.sh /usr/local/bin/
chmod 744 /usr/local/bin/debian.noip2.sh
chmod 664 /etc/systemd/system/debian.noip2.service
systemctl daemon-reload
systemctl enable debian.noip2.service

Источник

3
ответ дан 28 September 2019 в 10:34

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

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