如何在 OS X 中以 root 身份启动守护进程

如何在 OS X 中以 root 身份启动守护进程

我将 plist 放在 /Library/LaunchAgents 中,将 exexutive 程序放在 /usr/libexec 中,并在系统启动时启动守护进程。但此守护进程归用户所有。我尝试将 plist 放在 /Library/LauchDaemons 中,但它不起作用,守护进程不会在系统启动时启动

我想知道如何在系统启动时让守护进程以 root 身份启动。我应该做哪些额外的工作才能让守护进程以 root 身份启动?提前致谢!

答案1

将 plist 放入 /Library/LaunchDaemons 后,您需要运行命令sudo launchctl load -w /Library/LaunchDaemons/your.plist
Seeman launchctl以获取 -w 标志(它完全符合您的需要)
编辑:您是否在 plist 中将 RunAtLoad 键设置为 true?
編輯2:我忘了,RunAtLoad 对自动启动没有影响,它与禁用键有关。

答案2

更改放置 plist 的目录,如下所示:

/System/Library/LaunchDeamon

该目录是在用户启动之前从 Launchd 读取的。

相关内容