![init.d 脚本以哪个用户/组启动?](https://linux22.com/image/1290692/init.d%20%E8%84%9A%E6%9C%AC%E4%BB%A5%E5%93%AA%E4%B8%AA%E7%94%A8%E6%88%B7%2F%E7%BB%84%E5%90%AF%E5%8A%A8%EF%BC%9F.png)
也许我的标题错了,如果错了就纠正我
在系统启动时我收到错误
spawn-fcgi: opening PID-file '/var/run/php-fastcgi/php-fastcgi.pid' failed: Permission denied
我应该设置什么权限php-fastcgi
,以及以哪个组/用户的身份运行?如果我只使用 777,会不会有问题(如果我这样做,不会出现任何错误,php 也可以正常工作)
答案1
实际的 init 脚本以 root 身份运行。但是,它们通常会在执行守护进程时切换到特定用户。
如果您查看 /etc/init.d/php-fastcgi,您将在 start() 函数中看到 start-stop-daemon 行,它有一个 --chuid 参数。该参数表示守护进程将以哪个用户身份运行。
它通常是一个变量,因此从配置脚本中提取。如果这是 ubuntu/debian,它将是 /etc/default/php-fastcgi - 在其中查找与 chuid 参数具有相同变量名的参数。这是需要对 pid 文件具有写访问权限的用户。