【发布时间】:2013-06-28 02:30:50
【问题描述】:
我需要在 OS X 上创建一个包安装程序来处理两个启动的守护程序的安装:一个以 root 身份运行,一个以当前用户身份运行。虽然这仅适用于非常小的内部部署,但我不能保证当前用户名是什么。我该怎么做:
- 确保后者在 launchd plist 文件中设置了正确的用户名?
或
- 确保每个都通过正确调用 launchctl 进行设置,一个使用“sudo”,一个不使用?
【问题讨论】:
我需要在 OS X 上创建一个包安装程序来处理两个启动的守护程序的安装:一个以 root 身份运行,一个以当前用户身份运行。虽然这仅适用于非常小的内部部署,但我不能保证当前用户名是什么。我该怎么做:
或
【问题讨论】:
在您的飞行后脚本中,只需执行以下操作:
launchctl load -w /Library/LaunchDaemons/com.my.daemon.plist
LOGGEDUSERS=`who | awk '/console/ { print $1 }'`
for CURRUSER in $LOGGEDUSERS
do
su -l $CURRUSER -c 'launchctl load /Library/LaunchAgents/com.my.agent.plist'
done
查看this related question 了解更多信息
【讨论】: