如何找出失敗時傳回 0 的 init.d 退出腳本的狀態?

如何找出失敗時傳回 0 的 init.d 退出腳本的狀態?

似乎許多init.d腳本在失敗時返回 0,儘管這些建議。例如,在 中nginx,直接運行:

/usr/sbin/nginx -t        # returns 1 (with a bad config)

並透過以下方式運行init.d

service nginx configtest  # returns 0 (with a bad config)

管理遺失狀態碼的最佳方法是什麼?看來有幾個選擇:

  • 每當呼叫該命令時,都會解析輸出以查找“失敗”。
  • 更新init.d腳本以遵守此處所述的預期代碼
  • log_end_msg進行更新/lib/lsb/init-functions,以便它執行通常的日誌記錄,然後exit使用最初給出的退出代碼。

相關內容