Debian запустить -остановить -демон. Какова цель опции oknodo?

В вашем коде stdin, полученный из файла results, передается как while read..., так иsshs1, s2иs3). sshсъест все, что не было прочитано readв первом цикле.

Попробуйте сохранить stdinперед циклом для последующего использования с ssh:

exec {stdin}<&0
while read choice  
do
        case $choice in
                Server1) s1 <&$stdin ;;
                Server2) s2 <&$stdin ;;
                Server3) s3 <&$stdin ;;
        esac
done < results

Или используйте < /dev/null, если вам не нужен стандартный ввод в ssh.

1
17.10.2020, 22:39
1 ответ

Целью --oknodoявляется предотвращение сбоя, когда система уже находится в запрошенном состоянии. Например, если вы пишете сценарий инициализации, используя start-stop-daemon, поведение , определенное политикой Debian , состоит в том, что действие startдолжно не завершаться ошибкой, если демон уже запущен, и stopне должно не потерпеть неудачу, если демон уже остановлен; опция --oknodoобеспечивает такое поведение.

Этот параметр существует, поскольку start-stop-daemonпредназначен для более общего использования, чем просто поддержка сценариев инициализации. Таким образом, по умолчанию происходит сбой, если он не делает то, что от него требуется.

1
18.03.2021, 22:56

Теги

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