Xcodeでsystem
コールを使用してrootとしてログインしたい。私はこれがNSTask
またはNSPipe
を使用して行われていることを知るようになったとき、私はそれをグーグルjailbroken iPhoneで、どうやってrootでコマンドを実行できますか?
System("su");
System("alpine");
または
System("su root");
System("alpine");
または
System("su root alpine");
:私は成功せずにこのコードを試してみてください。 NSTask
とNSPipe
を使用して複数のsystem
コマンドを実行する方法を教えてもらえますか?
これを行う方法や別の方法について、いくつかのヒントを教えてください。私はjailbroken iPhoneでこのアプリケーションを使用しています。
詳細はhereです。
マインド:それの
例は、パスワードを使用して1つのラインでの使用です。 – v1Axvw
また、iOSはUnixオペレーティングシステムであることに注意してください。また、既存のプロセスにroot権限を与えることはできないと思います。新しいプロセスは、より高い権限でのみ起動できます。つまり、補助実行ファイルが必要です。 (あなたがrootとしてアプリケーションを再起動しない限り) – v1Axvw
また、 'system()'では、コマンドラインシェルに渡したものと正確にタイプしたものと同じであることにも留意してください。 (入力を渡すために2回呼び出す必要はありません)。したがって、 'system(" alpine ")は正しいアプローチではありません。そして 'system()'( 'fork()'や 'exec()'と違って)では、子プロセスのI/Oを直接制御することはできません。 "rootとしてログオン"したら、正確に何をしようとしていますか?あなたがシェルを手に入れても、 'system()'はあなたのプロセスをハングアップさせ、シェルが終了するのを待ちます。示唆された読書: 'man 3 system'、 'man 2 fork'、' man 3 exec'。 – mpontillo