Shell напечатает все операторы непосредственно перед тем, как выполнит их, если вы установите опцию x
.Либо:
- Запустите скрипт как
/bin/sh -x script
. - Измените строку
#!
на #!/bin/sh -x
. - Выполните
set -x
в началесценарий.
Очевидно, что первый установит его для этого запуска, два других установят его для каждого запуска.
Проверка справочной страницы start-stop-daemon (8) похоже, вы используете его неправильно.Вы должны не background start-stop-daemon
с &
, вместо этого вы должны указать start-stop-daemon
для фонового выполнения процесса, используя опцию --background
.В документации для --make-pidfile
даже сказано, что она не должна работать, кроме как вместе с опцией --background
.
Вы также должны перенаправить вывод start-stop-dameon, это только вывод нужного вам процессаперенаправлены.start-stop-daemon
перенаправит его на /dev/null
IIRC, но я не вижу способа переопределить это.Возможно, вам придется создать оболочку, которая будет exec
с соответствующими перенаправлениями, и использовать ее в опции --startas
, если только вам не удастся указать autossh
для непосредственного входа в файл.