Linuxでのsuコマンドは、主にユーザーの切り替えに使用されますが、一般ユーザーとスーパーユーザーを切り替えることができます。 suコマンドを使用した後、他のユーザーがまだいるか小さなシリーズのLinuxでsuコマンドの例を見てみましょう。
オリジナルQ:Linuxは、Iルートとしてログインし、ログインし、rootユーザーに切り替えるためにsuコマンドを使用するには、他のユーザー、同じことが何がない、同じものならば、私は他の後にsuコマンドを実行しますユーザーはまだシステムにいませんか? su、linuxプロンプト、他のユーザーがログインした後、他のユーザーを削除しようとしていますか?なぜ
答え:それをあなたに説明させてください。 Unixシステムでは、ユーザーがログインすると、ユーザーごとにシェルプロセスが作成され、対話的な機能が提供されますbashを使用している場合、シェルプロセスはbash、kshが使用され、プロセスはksh、その他のシェルは同じです。
プロセスのプロセスPCB(プロセス制御ブロック)には、実際のユーザーIDと実効ユーザーIDの2つの値があり、いわゆる実際のユーザーIDはプロセスのIDを表します。たとえば、私は現在rootユーザーですが、作成したプロセスの実際のユーザーIDはroot IDで、通常は0です。有効なユーザーIDとは、現在そのプロセスを使用する権利を持っているユーザーのIDのことです(たとえば、車を所有している場合はグループ化します)、この車の所有者は私ですが、許可は私のものではありません。
一般的に実ユーザIDと有効なユーザIDは同じであり、suコマンドには、コマンドの所有者の許可でプロセスを実行できる、つまりプロセスの実ユーザIDを作成できるという機能があります。有効なユーザーIDが同じではありません。 suコマンドを表示するには、ls -lを使用できますが、所有者のxパーミッションビットのs(小)でなければなりませんpasswdコマンドも同じで、同じ機能を持っています。このsビットは、コマンドを実行したユーザーがそのコマンドの所有者の権限で実行できることを意味しますsビットを取り消すと、suの所有者だけがsuを実行できます。
では、それについてさらに説明しましょう。
rootとしてsuを実行すると、suコマンドは現在のシェルプロセスを親プロセスとして新しいシェルプロセスを作成しますこのシェルプロセスは、suとrootのユーザーに提供されます。シェルプロセスはまだ存在します、そしてその逆も同様です、前のユーザのシェルプロセスが閉じられなかったので、あなたは質問をした理由です、あなたは終了するためにexitを使うことができます。代わりに、前のユーザーに戻ります。これらは親プロセスと子プロセス間の関係であるため、子プロセスの終了はもちろん親プロセスの実行には影響しません。しかし、強制的に親プロセスを強制終了した場合は、直接終了します。
実際、多くの人がwhoamiとi amの違いを理解していないため、役割は異なります。
who iは、現在のシェルプロセスの実際のユーザーIDを表示します。
whomaiは、現在のシェルプロセスの有効なユーザIDを表示します。
多くの場合、2つの出力は同じなので、2つのコマンドは同じだと思います。
例:root @ yunhw-Aspire-4750G:〜#私は誰ですか
root pts /0 2011-12-10 13:13(:0.0)
root @ yunhw-Aspire-4750G:〜#whoami
root
root @ yunhw-Aspire-4750G:〜#ps -ef
root 2939 2935 0 13:18 pts /0 00:00:00 bash
root @ yunhw-Aspire-4750G:〜#su - yunhw
yunhw @ yunhw-Aspire-4750G:〜$だれが私です
root pts /0 2011-12-10 13:13(:0.0)
yunhw @ yunhw-Aspire-4750G:〜$ worami
yunhw
root @ yunhw-Aspire-4750G:〜#ps -ef
root 2939 2935 0 13:18 pts /0 00:00:00 bash
yunhw 2958 2939 0 13:19 pts /0 00 :00:00 su - yunhw
yunhw 2966 2958 7 13:19 pts /0 00:00:00 -su
root @ yunhw-Aspire-4750G:〜#sudo kill -9 2939
このコマンドが実行されると、完全に終了します。
上記はLinuxでのsuコマンドの使用法ですが、suコマンドは問題の具体的な使用法を説明するためのもので、問題に遭遇したユーザーへの参照も提供します。 ?
Linuxプロセスには、コアプロセスと通常プロセスがありますが、通常プロセスがLinuxシステムのCPUコアにバインドされている場合、通常プロセスがコアプロセスになります。この記事では、例としてUbu
とリモートで相互接続する方法同じシステム間でリモート相互アクセスが容易であることは、誰もが知っていますが、異なるシステム間でリモートアクセスを実現するのは困難です。一緒にそれを知りましょう。 L
Linuxのオタクとして、システムの基本的な知識を習得するだけでは十分ではありませんこの問題を迅速に解決してスキルを習得する方法を知っておく必要があります次の小シリーズではLinuxオタクを紹介します。システム知識
1:高度な
アプリケーション::bashのチェックはプログラム
難易度のランニングではありません(注釈:UNIXまたはLinuxシ
Grep -v `whoami` あるいは、もっと微妙に言って、最も時間がかかる上位10のプログラムをリストしてはいけません。 ps aux - sort = - %cpu
OOMのキラーメカニズムは、プロセスがシステムリソースをある程度破損した場合に、Linuxがプロセスを強制終了するメカニズムです。この記事では、LinuxがOOMキラー機構をどのように使用するかを紹介