私はWindowsシェルを開き、rootユーザーであるSUを書くとき、私は再びSU、そして再び、そして再び書くことができることに注意してください...私は終了を記述する場合、これは私を導きます前の "suインスタンス"(?)と書かなければなりません。と書かなければなりません。suと書いてあります。この複数の「インスタンス」の意味は何ですか?また、この動作の利点はありますか?シェルでネストされた "su"コマンド呼び出しの意味は何ですか?
0
A
答えて
0
su
コマンドを実行するたびに、新しいシェルが現在のシェル内で開きます。
シェルを終了するには、exit
を実行します。
0
suを実行すると、親シェルのサブプロセス(子プロセス)を作成します。シェルでbash(またはzsh)を実行すると、その意味は同じです。
現在のサブシェルのレベルを知りたい場合は、echo $SHLVL
を実行してください。
suを複数回実行すると、プロセスファミリが作成されます。
2
UNIXプログラミングモデルでは、ユーザープロセスがルートまたは他のユーザーの権限を取得する方法はありません。
これは、単純にrootのシェルにあなたの現在のシェルをオンsu
のバージョンを記述することはできませんことを意味します。代わりに、suid実行可能ファイルを実行することによってrootアクセス権を取得する必要があり、それは必然的に新しいインスタンスを作成します。
具体的な利点はそれだけで伝統的なUnixでsu
を実装するための唯一の方法であることを起こる、ありません。
su
の代わりにexec su
を使用して、現在のシェルを新しいインスタンスに置き換えることができます。これは、ルートシェルのexit
が単にあなたをログアウトすることを意味します。
しかし、私はちょうどそれと一緒に行くことをお勧めします。 vim
またはnano
を終了すると、元のシェルに戻ることになります。 ssh
を終了すると、元のシェルに戻ることになります。 su
を例外にしないでください。
関連する問題
- 1. 呼び出し元オブジェクトの意味は何ですか?
- 2. 呼び出しの意味は何ですか:foo(function(params){...});
- 3. dbSetです.dbSetが呼び出された後に呼び出されると無意味ですか?
- 4. 関数呼び出しでの自己引数の意味は何ですか?
- 5. 意味呼び出すstart_child/
- 6. getter内でdispatch_asyncを呼び出すことは何を意味しますか?
- 7. これはperl $ variable_one {$ variable_two}で何を意味し、何を呼びますか?
- 8. emacsのeshellでsuを呼び出す
- 9. SelectionKeyインスタンスがinterestOps(0)を呼び出すときの意味は何ですか?
- 10. linuxシェルの `set ovs_ctl $ {1-start}`コマンドは何を意味していますか?
- 11. シェルでセット$(wc -l $ title_file)は何を意味しますか?
- 12. シェルで##と%は何を意味しますか?
- 13. このjava .execute()メソッド呼び出しは何を意味しますか?
- 14. シェルはSQLPLUS.exe経由で呼び出されますMSWindowsのHOSTコマンド
- 15. linuxコマンドxargsのためのInoneの意味は何ですか?
- 16. これらのgitコマンドの意味は何ですか?
- 17. Scala Ammoniteシェルでコマンド呼び出しをネストすることは可能ですか?
- 18. ROUGE-SUメトリック、意味と式
- 19. 呼び出し演算子&のコマンドは何ですか?
- 20. WinDBGの!clrstackコマンドの出力でGCFrameは何を意味しますか?
- 21. nmコマンドの出力で '@@'記号は何を意味しますか?
- 22. ネストされたdivsとCSSの意味
- 23. このシェル文は何を意味しますか?
- 24. unix psコマンドでTTYの意味は何ですか?
- 25. npmコマンドで-sの意味は何ですか?
- 26. cronコマンドで-q、-f、-c記号の意味は何ですか?
- 27. xargsコマンドで{}は何を意味しますか?
- 28. 「。@チェック」とは何を意味し、呼び出されますか?私は、ソースコードC#を読んだとき
- 29. Nodeでネストされた非同期呼び出しを処理する正しい方法は何ですか?
- 30. javascriptの「クリック」イベントでネストされた関数呼び出し
は_exec su_ではなく、子1 paralellシェルを開くことを言っていませんか?これは何のために役立つでしょうか? – Leopoldo
'execのsu'はちょうど* *新しいプロセスと現在のシェルを置き換えます。 – chepner