- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在通过 cocoa 应用程序运行卸载脚本,我注意到 launchctl 命令没有被执行。
这是调用脚本的代码部分(其中包含 sudo launchctl unload“守护进程的名称”)
//pFileName is the name of the File
NSString* pPath = [pCurrentBundle pathForResource:pFileName ofType:@"sh"];
char* const ppArgs[] = {const_cast<char*>([pPath fileSystemRepresentation]), NULL};
OSStatus status = AuthorizationExecuteWithPrivileges(m_AuthorizationRef, "/bin/sh", kAuthorizationFlagDefaults, ppArgs, NULL);
由于所有其他脚本命令都正确执行(并且它在终端中正常卸载),我猜测我没有与 TN2083 状态的 root 相同的权限(EUID 和 RUID 均为 0)。
最佳答案
首先,您不应该在已经以 root 身份运行的脚本中使用 sudo
。在默认的 Mac 设置下,它不会导致问题,但这取决于用户如何配置 sudoers。这仍然是我对破坏的最大怀疑。
接下来,当它运行时,您是否收到任何错误消息到控制台?你提到其他事情正在运行;他们是在这之前还是之后?您是否正在检查此脚本行的 unix 错误结果?
我假设您已阅读 Creating launchd Daemons and Agents .
您说脚本正在运行,所以我假设它实际上具有扩展名 .sh 并且 pFileName 不包含“.sh”。
TN2083 没有引用 AuthorizationExecuteWithPrivileges
。 “如 TN2083 所述”是什么意思?
我假设您没有在脚本上设置 setuid 位,对吗?这会给您带来 AuthorizationExecuteWithPrivileges
的麻烦。
关于cocoa - 通过 AuthorizationExecuteWithPrivileges 运行 sh 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1162448/
为什么命令“AuthorizationExecuteWithPrivileges”可以与“/bin/mv”等命令一起正常工作,而不能与另一种“/usr/sbin/calendarserver_mana
自更新到 OSX 10.7 Lion 后,Xcode 告诉我 AuthorizationExecuteWithPrivileges 已弃用。 任何人都可以建议我的应用程序可以写入它没有权限的目录的方法
自更新到 OSX 10.7 Lion 后,Xcode 告诉我 AuthorizationExecuteWithPrivileges 已弃用。 任何人都可以建议我的应用程序可以写入它没有权限的目录的方法
如果我使用 AuthorizationExecuteWithPrivileges 启动 shell 脚本,那么终止该脚本及其生成的任何其他进程的最简单方法是什么。 谢谢 最佳答案 它以 root 身份
我是 cocoa 的初学者...... 我只想在我的 Cocoa 应用程序中启动 Apache 和其他进程。 这是我的代码: OSStatus myStatus; Authorizat
当我调用 AuthorizationExecuteWithPrivileges 时,我现在已经更新了我的 OSX 和 xCode 我收到日志消息: dyld: DYLD_ environment va
我正在通过 cocoa 应用程序运行卸载脚本,我注意到 launchctl 命令没有被执行。 这是调用脚本的代码部分(其中包含 sudo launchctl unload“守护进程的名称”) //pF
随着 AuthorizationExecuteWithPrivileges 在 10.7 中被弃用,除了以 root 身份以编程方式运行命令(如 launchctl、chmod、chown 等)之外,
我是一名优秀的程序员,十分优秀!