Você menciona três erros. Os dois primeiros são bastante simples:
Starting wowza2s3: /etc/init.d/wowza2s3: line 20: success: command not found
/etc/init.d/wowza2s3: line 20: failure: command not found
Os comandos success
e failure
não são padrão. Eles são, presumivelmente, algum tipo de coisa específica do Amazon Linux. No entanto, com base no contexto, posso fazer um palpite sobre o que eles devem fazer:
(exec $MONO $EXE & echo $! >> "$PID_FILE") && success || failure
Isso significa "executar um comando e, em seguida, executar success
se funcionou e failure
se não funcionou. Eu não tenho idéia porque alguém escolheria uma maneira tão complicada de escrever isso. Tanto quanto eu posso dizer , essa linha é equivalente a:
(exec $MONO $EXE & echo $! >> "$PID_FILE")
Presumivelmente, os programas success
e failure
retornam simplesmente um valor de saída 0
(êxito) e não 0
( failure
). O shell faz isso de qualquer maneira, e é por isso que a linha acima deve ser a mesma. Tanto faz. Se você realmente precisa chamar um programa externo para isso, use os shell internos true
e false
:
(exec $MONO $EXE & echo $! >> "$PID_FILE") && true || false
O próximo erro é mais difícil de entender. O programa status
é apenas um link simbólico para /sbin/initctl
. A versão de initctl
no Ubuntu não possui a opção -p
. Eu não fui capaz de encontrar o manual de qualquer initctl
é usado no Amazon Linux. Presumivelmente, se você puder encontrá-lo, você pode verificar o que a opção -p
faz e descobrir o equivalente no initctl
do Ubuntu.