シェルにアクセスするこれらの方法の違いは何ですか?

シェルにアクセスするこれらの方法の違いは何ですか?

私が知る限り、Linuxでシェルにアクセスする方法はいくつかあります。今まで私が知っている方法は次のとおりです。

  1. TerminalやKonsoleなどのプログラムを使用してください。
  2. ショートカットCTRL + ALT + F1-6を使用してください。
  3. Xを無効にしてコマンドラインから直接起動します。
  4. SSHによるアクセス

答え1

(1) 端末エミュレーションを提供します。 Gnome TerminalやKonsoleなどのプログラムを「ターミナルエミュレータ」と呼びます。

(2) 実際の端末を提供します。まあ、まだシミュレーションだから端末しかし、シミュレーションはカーネル自体で行われるため、(1)よりも「より現実的」です。

(3) は実際に (2) と同じです。 Xがないとtty0が表示されます。これを使用すると取得されますCtrlAltF1

(4)は機械の外で使用するためのリモートシェルです。 SSHを使用するには、もちろん、デバイスにネットワーク接続が必要です。

デフォルトでは、すべての方法は同じです。コンピュータにプログラムを実行できるシェルがあります。次のようないくつかの微妙な違いがあります。

  • ターミナルエミュレータはGUIで実行されるため、GUIプログラムを実行でき、GUIプログラムは独自のウィンドウで開きます。
  • SSHを使用すると、リモートコンピュータでプログラムを実行できるため、物理サーバーから離れている間でも操作を実行できます。

あなたは見なければなりません「ターミナル」、「シェル」、「tty」、「コンソール」の正確な違いは何ですか?もっと学ぶ。

答え2

シェルは、シェル言語で入力されたシェルコマンドを処理し、オペレーティングシステムにさまざまな方法で他のプログラムを実行するように指示できるプログラムです。それにすることができますインタラクティブコンテキストは仮想デバイスを使用して実装されます。 Linuxでは、これらのノードは、/dev/tty[N]VTの既存のノードまたは/dev/pts/[N]他のすべてのエントリに対して動的に作成されたノードとして表示されます。 「VT」は仮想端末であり、方法#2と#3を介してアクセスできる非GUIコンソールです。 #1(Konsoleなど)の場合はこれを呼び出します。端末エミュレータ(したがって、「ターミナルエミュレータ」と「仮想端末」の違いに注意してください。)VTはVC(「仮想コンソール」)とも呼ばれます。

しかし、シェルが常に対話型ではない。システムはシェル化身を使用して多くのタスクを処理します。 1つのインスタンスではなく、すべての方法で実行されているシェルインスタンスにアクセスできることに注意してください。通常、各アクセスポイントは異なるインスタンスです。したがって、「シェル」(通常はシステムにこの目的を提供するプログラム)と「シェル」(そのプログラムのインスタンス)を区別できます。

答え3

これらの方法には少し微妙な違いがあります。

1つはすでにログインしているターミナルエミュレータ(ターミナルとKonsoleの例)を起動し、もう1つは(2、3、4)最初にログインし、通常はパスワードを提供する必要があります。これをログインシェルと呼びます。

もう1つの違いはターミナルエミュレーションタイプで、少なくとも(仮想または非仮想)コンソールとターミナルエミュレータ(ターミナル、Konsole)の間で異なる可能性があります。 sshは起動時にすでに持っている端末を使用します(puttyなどのグラフィッククライアントから接続する場合は設定可能)。コンソールモードでは、マウスが有効かどうか(コピー/貼り付け)が無効になることがあります。

sshはX11を介してトンネリングできるため、ターミナルエミュレータなどのグラフィックアプリケーションを起動できます。コンソールを使用すると、目立つグラフィック環境はありませんが、他の場所に表示されるサーバーでX11クライアントを起動することを禁止することはありません。

言及されていないシェルにアクセスするために使用されなくなった方法は、シリアル回線を介してログインすることです。

関連情報