問題タブ [su]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
381 参照

linux - スクリプト内で他のユーザーとしてコードを実行する方法は?

メールサーバーのインストールを自動化するスクリプトを書いていますが、コードの一部はリポジトリにないため、ソースからコンパイルする必要があります。私はこれに問題はありませんが、ルートとして実行されているスクリプトからの最善かつ最も安全な方法が何であるかはわかりません。ビルドのために非特権ユーザーを作成する必要があることはわかっていますが、次のうちどれが推奨される方法ですか?

1

2

3

理想的には、これが実行された後、ルートとしてスクリプトを続行したいと思います。オプション3がおそらく最も理想的だと思いますが、これについての意見をお願いします.

0 投票する
4 に答える
1717 参照

android - ssh セッションで別のユーザーに su すると、Android の通常のユーザー ログインでグループ情報が失われる

私がやっていること:

  • 電話でネイティブに使用するために GNU emacs を作成しました。
  • 私は電話で emacs をデーモン モードで実行しているので、いつでも emacsclient に接続して、通常のファイルの操作やプロセスの実行などを続けています。
  • 電話の端末からログインすると、現在ユーザーは 10157 で、すべてが機能します。

    $ ID

    uid=10157(10157) gid=10157(10157) グループ=10157(10157),1015(1015),1023(1023),1028(1028),3003(3003)

  • PC から電話に ssh 経由で接続すると (電話で DigiSSHd を使用します)、通常のユーザー 10282 としてログインし、すべてが機能します。

    $ ID

    uid=10282 gid=10282 グループ=1015(1015),1023(1023),1028(1028),3003(3003)

Emacs は正常に動作します。ただし、この方法では、emacsclient を介してユーザー 10157 で実行されている emacs プロセスに接続できません。ユーザー10157の下でemacsを開きました。

したがって: $ su - 10157

わかりました。emacs などは実行できますが、Web にはアクセスできません。

したがって、私は他のグループに加えて、インターネット アクセスに必要なグループ 3003 にも属していません。

このグループ情報が削除されるのはなぜですか? また、これを修正するにはどうすればよいですか?

0 投票する
2 に答える
1424 参照

java - Androidで実行されるシェルコマンドで「su」トーストを避けますか?

シェル コマンドを実行して build.prop に行を挿入する単純なアプリを開発しています。私の主な問題は、関数を作成するトグルをチェックするたびに、シェル文字列を表示するトーストが表示されることです。これを回避する方法はありますか?また、少しきれいにする提案があれば、コードをいただければ幸いです! (私にとって最初のアプリ)。

コード:

したがって、私の主な問題は、su -cその迷惑なトーストを表示することです。busybox または toolbox に渡そうとしましたが、 で実行する必要があるため成功しませんでしたsu

ありがとうございました!

0 投票する
2 に答える
1620 参照

android - アプリケーションを介してシェルコマンドを実行しています。正しく機能していません。

こんにちは私はアプリからシェルコマンドを実行しようとしています。コードはエラーなしで実行されますが、出力は表示されません。例として、私はファイルをコピーしようとしています。このコマンドは、シェルコマンドプロンプトを介して実行している間は正常に機能します。これが私が使用したコードです。LogCatのデバッグステートメントから、すべてのコードブロックがカバーされていることがわかりました。ただし、ファイルはコピーされません。解決策を提案してください。PS:私はこれをエミュレーター経由で実行しています。

}

}

0 投票する
2 に答える
1933 参照

linux - 'su'を使用したログインユーザーを確認するにはどうすればよいですか

ログインシェルを使用してrootとしてログインすると、「who」または「users」コマンドでrootユーザーのエントリが表示されます。ただし、user1でログインしてから、次を使用する場合:

その場合、「who」および「users」コマンドはrootのエントリを表示しません。

現在root(または他のアカウント)に切り替えているログインユーザーがシステムにいるかどうかを確認する方法はありますか?

0 投票する
2 に答える
2346 参照

java - SuperSUから許可プロンプトを取得できません

いくつかのルートコマンドを実行する必要があるアプリがあります。SuperSUのバージョンは1.04です。Suバージョンは1.02です。Android4.1.1。デバイスはSamsungGalaxyS3-に根ざしています。

問題は、SuperSUから許可プロンプトを取得できないことです。多くのことを試しましたが、プロンプトが表示されません。

RootCheckerベーシック、ADB、その他のアプリの場合は表示されます。これが私の手順です-多分私は何か間違ったことをしています。

InputStreamハンドラーは次のとおりです。

許可ウィンドウが表示されないようにブロックする理由を誰かが知っていますか?ありがとう。

0 投票する
1 に答える
308 参照

bash - bash スクリプトで su -c と一致する引用符がありません

のようなものを書きたい

しかし、次のエラーが表示されます。

コマンドラインにコマンドを書くと実行されます。変数に格納して外挿しようとすると、そうではありません。なんで?

0 投票する
1 に答える
241 参照

java - Unix でロックが必要なコマンドとそうでないコマンドがあるのはなぜですか?

最近、私たちの環境 AIX 7.1 で興味深いことを観察していました。この問題を追跡するために、Java で小さなロック アプリケーションを作成しました。

私が知る限り、これは /etc/passwd で読み取り/書き込みロックを取得します。このアプリケーションの 2 つのインスタンスを実行しようとすると、予想どおり 1 つのインスタンスでしかロックを取得できません。同様に、次のコマンドを実行すると:

Java アプリケーションからロックを解放するまで、コマンドがハングします。一方、ファイルを次のように読み取ります。

正常に実行されます。そして、次のようにファイルに書き込むことさえできます:

も大丈夫です。明らかに、Java FileLock の実装はシステムに依存しており、この性質のために指定された動作はありません。しかし、私が興味を持っているのは、「su」が待機する必要がある理由です。「cat」リダイレクトが単にファイルを削除し、新しい出力で再作成する可能性はありますか?それとも、コマンド間でロックメカニズムが一貫していないだけですか?

編集:質問をして以来、Javaアプリケーションにいくつかの書き込みステートメントを追加したため、プログラムの構造は次のようになりました。

そして、このすべての情報が更新された /etc/passwd に反映されているため、IO-Redirection は単にファイルを削除していたわけではないようです。では、なぜ 'su' と '>' の違い (そしておそらく他の多くのもの) なのですか?

0 投票する
2 に答える
4369 参照

android - Androidアプリケーションを介して実行中の「su」コマンドの問題

こんにちは、アプリを介して次のように「su」コマンドを実行しようとしています。

私は終了値1を取得しています..「id」などの他のコマンドに対して0を返します

コマンドプロンプトで確認しましたが、エラーは表示されませんでした(以下を参照)。

エミュレーターがルート化されているということですか?もしそうなら、本当の問題は何ですか?誰でも私を案内してもらえますか..

0 投票する
1 に答える
12083 参照

android - 「su」コマンドを実行するためのルート権限が Android アプリに付与されていない

アプリから「su」コマンドを実行したい..エミュレーターをルート化し、Superuser.apk(superuser 2.3.6.1)をインストールしました

しかし、「su」の実行中に何らかのエラーが発生したように見える終了値として 255 を取得しています。RootTools ライブラリ ( http://code.google.com/p/roottools/ ) を含めました。メソッドRootTools.isRootAvailable()、RootTools.isAccessGiven() で確認すると、エミュレータに SU があることがわかりましたが、アプリケーションにルート権限が付与されていません。本題になるの??..もしそうなら、私のアプリにルート権限を付与する方法を教えてもらえますか?