Назад | Перейти на главную страницу

«Сбой» для сценария инициализации

После перехода на новый baselayout2 в gentoo у меня всегда

 rtorrentd                               [  crashed  ]

даже если он работает на экране без проблем.

Вот conf.d:

# Owner of screen session and rtorrent process
USER="zerkms"

# Home dir with .rtorrent.rc
HOME_DIR="/home/zerkms"

# Screen options for starting rtorrent
SCREEN_OPTS="-dmS rtorrent /usr/bin/rtorrent"

# Path to *.pid file
PIDFILE="/var/run/screen.pid"

# Path to 'screen' binary
SCREEN_BIN="/usr/bin/screen"

# Path to 'rtorrent' binary
RTORRENT_BIN="/usr/bin/rtorrent"

и init.d соответственно:

depend() {
        need net
}

start() {
        ebegin "Starting screen & rtorrent"
        env HOME=${HOME_DIR} start-stop-daemon --start --background --make-pidfile --pidfile ${PIDFILE} \
        --chuid ${USER} --exec ${SCREEN_BIN} -- ${SCREEN_OPTS}
        eend $?
}

stop() {
        ebegin "Stopping screen & rtorrent"
        start-stop-daemon --stop --quiet --exec ${RTORRENT_BIN}
        eend $?
}

restart() {
        ebegin "Restarting screen & rtorrent"
        svc_stop
        sleep 2
        svc_start
        eend $?
}

Пытался сравнить с любым действующим скриптом init.d, но не обнаружил существенных различий. Любые идеи, почему это [crached] ярлык появляется?

Обычный способ обнаружить сбой демона - это наличие PID-файла, но отсутствие процесса-демона с этим PID. Демон удаляет файл PID при обычном завершении работы, но оставляет его после сбоя.

Если вы считаете, что обнаружение ошибочно, вам следует выключить демон, стереть файл PID, а затем перезапустить демон.