v0.6.0

Daemon 指令

以 kura、kura stop 與 kura port 啟動、停止 KuraDB 背景 daemon 並固定其 port。

啟動 daemon

kura

Launcher 會:

  1. 以 append 模式開啟 ~/.config/kuradb/daemon.log 接收 daemon 輸出。
  2. 以內部 --daemon argument 在新 session 啟動相同 executable,stdin 綁定至 /dev/null。
  3. 每 100 ms 輪詢一次 ~/.config/kuradb/endpoint,最多 10 秒。
  4. 就緒時印出 endpoint;失敗時以狀態碼 1 結束並指示查看 daemon.log。

--daemon 是內部 lifecycle argument,不是一般 user command。Launcher 不會檢查是否已有 daemon 在執行,因此再次啟動前請先執行 kura stop。

設定 port

kura port set 8080
kura port clear
Subcommand 接受 效果
set <port> 1 到 65535 的 integer 將 port 寫入 config.json,若 daemon 存活則先停止,再啟動 daemon
clear 無 argument 從 config.json 移除固定值;刻意不重新啟動,下次手動啟動時改用隨機 port

超出範圍或非數字的 port,以及其他 subcommand,會印出用法並以狀態碼 2 結束。Port 選擇規則見 網路設定。

停止 daemon

kura stop

KuraDB 從 runtime.uid 讀取 PID,確認仍存活後傳送 SIGTERM。它會以 100 ms 間隔輪詢最多五秒;若程序仍未結束,則傳送 SIGKILL,最後印出 stopped kura (PID <pid>)。

條件 輸出 結束狀態碼
runtime.uid 不存在或無法讀取 stop: no running daemon found 1
有記錄 PID 但程序未存活 stop: daemon not running 1
訊號傳送失敗 stop: <error> 1
EN