init.d 脚本以哪个用户/组启动?

init.d 脚本以哪个用户/组启动?

也许我的标题错了,如果错了就纠正我

在系统启动时我收到错误

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 文件具有写访问权限的用户。

相关内容