0

su を必要とする iOS の MobileTerminal 用のスクリプトがあります。su を入力してからパスワードを入力しなくても、root としてログインするコマンドを bash スクリプトに追加する方法はありますか?

乾杯、

12月

4

2 に答える 2

1

SUDO とシステム関数は iOS では許可されておらず、サンドボックスとセキュリティに違反しています。

于 2012-12-14T22:18:57.417 に答える
0

それが私のために働いた解決策です:

  1. ジャイブレイク
  2. Cydia から sudo をインストールする
  3. Cydia から OpenSSH をインストールする
  4. iPhoneにSSHで接続

    $ssh root@<your iphone ip>
    Password: alpine //no echo
    

    そして走る

    iPhone:~ root# visudo
    

    直後に追加

    root    ALL=(ALL) ALL
    

    この行(必要なものによって異なります)

    mobile  ALL=(ALL) ALL
    
  5. 変更内容を保存。できるようになりsudoました。で編集するには、visudo次のようなコントロールを使用する必要がありますvi
  6. sudo結局、このようにハードコードされた呼び出しをスクリプトに追加します

    #!/bin/bash
    sudo -S -p "" echo -n "" <<!
    alpine
    !
    sudo echo "This line is printed as root"
    

    今説明:

    • -S<<!\n ... \n!ブロックからパスワードを読み取ることができます。1行に出力する必要があります。
    • -p ""パスワードプロンプトを抑制するため、行Password:は出力されません
    • echo -n最後に改行文字を許可しない

したがってsudo、パスワードプロンプトなしでスクリプトを実行できます。唯一のこと - この方法では、パスワードがハードコードされています。ただし、 $1 のようなコマンドライン引数を試すことができます (テストされていません。単なるアイデアです)。

于 2013-03-26T14:09:20.323 に答える