在OS X Yosemite(10.10)上,是否有任何方法可以删除服务的启用/禁用覆盖设置?launchctl - 删除启用/禁用覆盖
例如,要永久禁用不存在的服务“试验”的根,这样做:
sudo launchctl disable user/0/test
检查,它已被添加到伤兵名单:
sudo launchctl print-disabled user/0
结果:
disabled services = {
"test" => true
}
login item associations = {
}
现在,我该如何从已禁用的服务列表中删除“测试”?
(我知道我可以启用它,但我只是想完全删除的条目。)
注:
如果我重新启动我的电脑,我看到了“测试”超控被添加到一个launchd disabled
文件:
sudo cat /var/db/com.apple.xpc.launchd/disabled.0.plist
结果:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>test</key>
<true/>
</dict>
</plist>
我试图运行此命令从.plist
文件手动删除它:
sudo /usr/libexec/Plistbuddy /var/db/com.apple.xpc.launchd/disabled.0.plist -c Delete:test
这并从文件中删除它,但它只是再回来,当我重新启动我的电脑。有任何想法吗?
以下是对类似主题的讨论:http://comments.gmane.org/gmane.comp.sysutils.launchd.devel/117 –