1

如主题所述,我的应用程序位于 /Applications 文件夹中,它具有 root 访问权限,但我仍然无法在 /System/Library/CoreServices 中写入/编辑文件。

谁能建议我如何做到这一点?

PS我正在为越狱iOS4(iOS 4 SDK)开发。

4

2 回答 2

1

好的,得到这个工作,你必须拥有管理员作为组的 root 访问权限,并且 SetUID 标志应该设置为写入该特定位置。我所做的是,我看到了 Cydia.app 的目录结构并据此编译了我的应用程序(例如 Cydia 和 Cydia_)。

将您的应用程序名称重命名为 YourApp_ 并创建一个名为 YourApp 的新文件并将下面的文本发布到其中,设置适当的权限,您就可以开始了。

#!/bin/bash
C=/${0}
C=${C%/*}
declare -a flags
exec "${C:-.}"/MyApp_"${flags[@]}" -- "$@" 2>>/tmp/MyApp.log`

顺便说一句,YourApp 二进制文件也应该拥有 4755 的 setuid 标志权限。

于 2010-07-22T02:30:48.053 回答
0

您是否检查过该目录的标志?也许它被设置为“系统不可变”。查看 chflags 命令以了解有关文件标志的更多信息。

于 2010-07-11T08:57:06.767 回答