Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/103.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在iOS上使用root权限运行子程序?_Ios_Objective C_Permissions_Sudo_Su - Fatal编程技术网

如何在iOS上使用root权限运行子程序?

如何在iOS上使用root权限运行子程序?,ios,objective-c,permissions,sudo,su,Ios,Objective C,Permissions,Sudo,Su,使用Android SDK,我可以通过调用su然后运行我的代码,以超级用户的身份运行进程。如何在iOS上执行相同的操作 以下是我在Android上使用的: // Elevate to root Process localProcess = Runtime.getRuntime().exec( "su"); // Now run some command as root DataOutputStream localDataOutputStream = new DataOutputStream(

使用Android SDK,我可以通过调用
su
然后运行我的代码,以超级用户的身份运行进程。如何在iOS上执行相同的操作

以下是我在Android上使用的:

// Elevate to root
Process localProcess = Runtime.getRuntime().exec( "su");

// Now run some command as root
DataOutputStream localDataOutputStream = new DataOutputStream( localProcess.getOutputStream());
localDataOutputStream.writeBytes( "chmod 666 file.name\n");
localDataOutputStream.writeBytes( "exit\n");
localDataOutputStream.flush();
我尝试了以下C命令,但收到一个错误,说明我的密码不正确

system( "ls -l /System/Library/TextInput/TextInput_zh.bundle/Keyboard-zh.plist"); // read start permissions
system( "sudo -s alpine | chmod 666 /System/Library/TextInput/TextInput_zh.bundle/Keyboard-zh.plist"); // trying change permissions
system( "ls -l /System/Library/TextInput/TextInput_zh.bundle/Keyboard-zh.plist"); // read changes
日志如下所示:

-rw-r--r--1根控制盘7813 Dec 16 10:47/System/Library/TextInput/TextInput_zh.bundle/Keyboard-zh.plist

chmod:更改“/System/Library/TextInput/TextInput_zh.bundle/Keyboard zh.plist”的权限:不允许操作

我们相信你已经收到了当地系统的常规讲座 管理员它通常归结为以下三件事:

#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
密码:

-rw-r--r--1根控制盘7813 Dec 16 10:47/System/Library/TextInput/TextInput_zh.bundle/Keyboard-zh.plist


如何在iOS上以编程方式运行任何具有根权限的脚本?我正在寻找一个可以在越狱设备上使用的答案,但如果可能的话,我会很高兴能在库存设备上使用

IOS的一个主要功能是沙箱,这意味着应用程序驻留在自己的文件系统中,而其他应用程序不可见。你想做的事与IOS的安全设计背道而驰


如果您需要做的是允许一组应用程序彼此对话并共享数据,那么可以通过共享文档类型、导出的UTI和DocumentInteraction类来实现这一点,

您的
sudo
命令格式不正确:

sudo -s alpine | chmod 666 /System/Library/TextInput/TextInput_zh.bundle/Keyboard-zh.plist
这被解释为:

sudo -s <sudo-command> | <non-sudo-command>
由于
sudo
没有提供密码(
-S
参数),因此 通过输出以下内容提示输入密码:

Password:
我认为你打算这样做:

echo <password> | sudo -S <command>

有关带越狱的
sudo

的更多信息,请参见:轻松,无越狱:绝不。@H2CO3请查看任何带越狱的示例,问题:在android中,我需要安装超级用户应用程序来运行此代码。在iOS中,我必须安装任何程序吗?@Moshe谢谢你编辑我的初学者英语,你没有机会通过合法途径。苹果在商店里没有这样的应用程序。出于安全考虑,这也是非常好的。为什么我的问题有很多反对票!!???我在这个问题上没有违反任何规则。我认为回答“有越狱:很容易,没有越狱:绝对不会”并且不给出例子的人是一个巨大的洪水。我知道很少有应用程序具有sudo权限。例如,iFile。这个应用程序可以像我需要类似的功能。我需要做什么才能获得像iFile这样的应用程序的权限?是的,我知道越狱。我问:如何在iOS上通过越狱程序运行SUDO权限的脚本?我试图运行下面的命令,但出现了一些错误,请告诉我如何修复这个系统(“echo'alpine'| SUDO-S tcpdump-c 20-I en1-vvv-A host www.facebook.com”);错误:我们相信您已收到本地系统管理员的常规讲座。这通常归结为三件事:#1)尊重他人的隐私#2) 打字前先想一想#3) 权力越大,责任越大。密码:手机不在sudoers文件中。这一事件将被报道。@PalchuriSudheerKumar你真的应该把它作为一个新问题发布。
echo <password> | sudo -S <command>
echo 'alpine' | sudo -S chmod 666 /System/Library/TextInput/TextInput_zh.bundle/Keyboard-zh.plist