Ubuntu

在 /var/run 中寫入 PID 文件需要什麼權限?

  • April 24, 2020

在 Ubuntu 上:

touch: cannot touch `/var/run/test.pid': Permission denied

我正在啟動 start-stop-daemon 並喜歡在 /var/run 中寫入 PID 文件 start-stop-daemon 以 my-program-user 身份執行

/var/run setting is drwxr-xr-x  9 root  root

我喜歡避免將 my-program-user 放在根組中。

預設情況下,您只能作為有效使用者 ID 為 0 的使用者(即 root)寫入 /var/run。這是有充分理由的,所以無論你做什麼,都不要去更改 /var/run 的權限… 相反,以 root 身份在 /var/run創建一個目錄:

# mkdir /var/run/mydaemon

然後將其所有權更改為您希望執行程序的使用者/組:

# chown myuser:myuser /var/run/mydaemon

現在指定使用 /var/run/mydaemon 而不是 /var/run。

您始終可以通過以相關使用者身份執行測試來對此進行測試。

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