サーバーからデーモン (B) 用の 1 つの .pkg をダウンロードし、それをインストールする 1 つのデーモン (A) を使用して、デーモン (B) を /Library/MyFolder/ に配置します。また、2 つのグローバル起動エージェントを同じディレクトリに配置し、対応する plist を /Library/LaunchAgents に配置します。デーモン (B) のアプリケーション バンドルには、ログインしているすべてのユーザーの起動エージェントをロードする launcher という 1 つのラッパー アプリが含まれています。以下のスクリプトを使用して、10.10 で起動アプリを開きます。
for num in `ps ax | grep MacOS/loginwindow| cut -c 1-5`;
do
if [ $num -ne 1 ]
then
sudo launchctl bsexec $num /Library/MyFolder/daemon(b).app/Contents/MacOS/Launcher
fi
done.
上記のスクリプトは 10.10 では問題なく動作しますが、10.11 EL Capitan では動作しません。ルートレスを無効にすると同じスクリプトが正常に動作するため、10.11 のルートレス機能が原因でしょうか。また、daemon(B) の .pkg を手動でインストールすると、その tim も正常に動作します。関連する質問はこちら