「ログイン」の正確な定義は何ですか

「ログイン」の正確な定義は何ですか

Raduの答えは非常に有益です。 https://askubuntu.com/questions/376932/why-who-command-does-not-shows-root-as-a-logged-in-user しかし、これは「Linuxでの「ログイン」の正確な定義とは何ですか?

ベストアンサー1

誰もが同意できる正確な定義を見つけることができるかもしれません。おそらく「/bin/loginまたはそれと同等の」ものかもしれません。これはsu、端末の既存のログインに代わるものではなく、ログインの特徴の1つは、一度に1つの端末に1人しかログインできないことです。

私の定義については議論の余地があるかもしれません。 「ログイン」とは、現在誰も使用していない端末(またはXモニター)で新しいセッションを開始することを意味します。しかし、新しい端末を作ったらどうでしょうか? xtermを起動すると、新しいttyを作成してもログインする気がしません。認証を要求しないためです(Xセッションの開始時に認証するかstartx

一方、新しいssh接続を開始することは、対話型シェルでは/bin/loginなくリモートで実行するようにコマンドを指定しない限り、ログインに非常に似ています。その操作には認証が必要ですが、そうではありません。正確に「ログイン」するような気がしません。

whoあなたがリンクした元の質問は、「ログイン」が何を意味するのかという哲学的な質問ではなく、具体的なもの(コマンド)に関するものなので、答えるのは簡単です。正確な答えはwhoレポートファイルの内容ですutmp。特定のタスク(suまたは)がに項目を記録しているかどうか疑問に思う場合、通常、答えは「状況によって異なります」ですxterm。端末がに追加されるかどうかを制御するオプションがあります。ssh localhost -l rootutmpxterm-ut+ututmp

では、以下を使用してscreen現在のttyの項目を切り替えることができますutmp。 Lはログインを意味します。CtrlAL

SSHの場合、専用オプションは表示されません。いくつかの実験の後にttyを生成すると、utmp非対話型コマンドを実行してもssh -t localhost wアイテムを取得できるようです(自己リストに表示されます)。w

おすすめ記事