"start-stop-daemon: невозможно установить"
у меня есть следующий start-stop-script:
NAME="examplestartstop"
PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/opt/node/bin"
LOGFILE="/var/log/$NAME/start-stop-daemon.log"
APP_DIR="/usr/bin"
APP_BIN="tail -250f /var/log/apache2/error.log"
USER="minecraft"
GROUP="minecraft"
# Include functions
set -e
. /lib/lsb/init-functions
start() {
echo "Starting '$NAME'... "
start-stop-daemon --start --chuid "$USER:$GROUP" --background --make-pidfile --pidfile /var/run/$NAME.pid --exec "$APP_DIR/$APP_BIN" $LOGFILE || true
echo "done"
}
когда я пытаюсь запустить скрипт, я получаю следующий вывод:
$ ./test start
Starting 'examplestartstop'...
start-stop-daemon: unable to stat /usr/bin/tail -250f /var/log/apache2/error.log (No such file or directory)
done
что я сделал не так на $APP_DIR/$APP_BIN
часть?
1 ответов
вы передаете имя команды и аргументы команды в качестве команды для выполнения. start-stop-daemon
ищет команду /usr/bin/tail -250f /var/log/apache2/error.log
которого, конечно, не существует. Вместо этого вы хотите вызвать что-то вроде (неважные части остались):
APP_DIR="/usr/bin"
APP_BIN="tail"
APP_ARGS="-250f /var/log/apache2/error.log"
start-stop-daemon --start --exec "$APP_DIR/$APP_BIN" -- $APP_ARGS
(обратите внимание на -- между командой и ее аргументы)