いつログインせずに端末を開くことができますか?

いつログインせずに端末を開くことができますか?

Linux、特にUbuntu(14.04以降)システムについて話します。

ケース1 - 指摘したようにこの回答、疑似端末に割り当てられたプロセスはログインする必要はありません。例: cups。とにかく彼らはいいえコマンド出力に一覧表示されますwho

ケース2 - GUIログインを実行すると、実行可能ファイルgnome-terminal(またはxfce4-terminalデスクトップ環境に応じて)がユーザーと共に多数の疑似端末を開くことができます。すでにログインして擬似端末を開くと、whoコマンド出力に新しい行が表示されます。

だから、

1)プロセスとユーザーの両方が端末を開くことができるため、共通の特性(同様の方法で動作できるため)との違いが必要です。 ~からシステムシェル、ユーザー(ターミナルを開くときに明らかにログインが必要であり、コマンドにリストされてwhoいます)とプロセス(ターミナルを使用するためにログインが必要ではなくコマンドにリストされていない)whoの違いは何ですか?私の疑いは、プロセスが必要なときにシステムの確認なしに端末を開くことができるのに対して、ユーザーは常にログインしている必要があるということです。

2)どうすればいいですか?ユニークGUIログイン端末エミュレータで開かれた疑似端末へのすべてのログインを「ロック解除」しますか? viaを開くと/dev/tty1効果はありませんCtrlAltF1

ベストアンサー1

プロセスは、実行可能なバイナリの実行中のインスタンスです。すべてのファイルなどのすべてのプロセスは特定のユーザーに属します。 (あるプロセスのユーザーIDが異なるため、少し複雑ですが、ほとんど同じです。)

プロセスがファイル、TCPソケットなどを開くか生成できるように、ターミナルライン(tty)はいつでもすべてのプロセスで開くことができます。これに関して、端末には特別なものはありません。

これは古いユーザーレベルの概念であり、ログインを追跡するためのutmp / wtmpデータベースが存在します。グラフィカルログインマネージャは、グラフィカルログイン全体に属するレコードを更新し(多少意味があります)、端末エミュレータは特定の端末行に属するレコードを自発的に更新(または更新しません)します(私の意見ではhttps://bugzilla.gnome.org/show_bug.cgi?id=747046、無意味)。これは、ターミナルがグラフィックエミュレータではなく実際のターミナルだった頃から来ており、もちろん誰がどこにログインしたのかを追跡するのが合理的でした。

who私の考えでは、グラフィックターミナルエミュレータを開くことが「ログイン」を意味するか、開いているターミナルウィンドウ/タブのログエントリを生成する必要があり、同様のユーティリティでそれを報告する必要があるのは古くて悪い伝統です。

whoある程度正しく維持されているutmp / wtmpファイルから情報を印刷するなどのユーティリティも、有用性と信頼性にかなり制限されています。

おすすめ記事