Ubuntu-12.04

runit - 無法打開監督/確定:文件不存在

  • February 14, 2019

我試圖弄清楚為什麼 runit 不會啟動或給我託管應用程序的狀態。在 Ubuntu 12.04 上執行。

我創建了 /service、/etc/sv/myapp(其中包含一個執行腳本、一個配置文件、一個日誌文件夾和一個執行腳本)。我創建了一個從 /service/ 到 /etc/sv/myapp 的符號連結

當我跑

sudo sv s /service/*

我收到以下錯誤消息:

warning: /service/myapp: unable to open supervice/ok: file does not exist

我的一些Google搜尋顯示,據說重新啟動 svscan 服務可能會解決這個問題,但是殺死它並執行 svscanboot 並沒有什麼不同。

有什麼建議麼?我在某處錯過了一步嗎?

問題是,至少在 Ubuntu 12.04 上,runit 服務符號連結應該放在 /etc/service 下,而不是 /service 根據Arch 上的 Runit 指南

就我而言,我在停止服務後從服務配置中刪除了pid :

# stops the service 
sv down serviceName

# deletes the 'pid' and 'lock' files
find -L /etc/service/serviceName -type f \( -name "pid" -o -name "lock" \) -delete

# starts the service
sv up serviceName

# verify service status
sv s serviceName

我花了一段時間才找到解決方案,所以我希望它可以幫助其他人。

引用自:https://serverfault.com/questions/520741