Screenとxtermの間に微妙な違いや大きな違いがあるかどうかはよくわかりません。私は以前にscreenを使用したことがあり、マルチプレクサのようなものとして説明されていて、xtermを数回試しました。誰かが2つの違いだけでなく、両方の長所と短所を説明できますか?
実際の端末 それほど頻繁には表示されませんが、たとえばLinuxテキストコンソールは(CTRL +) ALT + F1 使って F6 端末と見なされます。
xtermは、x-windowシステムとグラフィカルユーザーインターフェイスを実行するシステム用のターミナルエミュレータです。通常は単一のプロセス(デフォルトでは対話型シェル)を実行する単一の端末のみを提供します。 Konsole
および同様にGnome Terminal
は、GUI用の少し高度なターミナルエミュレータです。
ターミナルまたはxtermやPuTTYなどのターミナルエミュレーター内からscreen
を実行します。その単一の端末では、ウィンドウ画面は複数の仮想端末を実行するウィンドウマネージャーのように機能します。
の観点から間xterm
およびscreen
:
どちらも、実際のハードウェアデバイスの「ターミナル」のエミュレーションです。 VT100:
xterm
は1つの端末をエミュレートし、GUIウィンドウ 画面上で
screen
は複数の端末をエミュレートしますが、実際には出力部分をエミュレートしません-それ自体がプログラムのように動作します-に表示するには端末が必要ですが、1つだけ!
それらは異なるを解決しますが、関連の問題を解決します-そして組み合わせて解決することができますより複雑なユースケース:
たとえば、それぞれに端末が必要な2つのプログラムを実行できます。
そしてscreen
に、それぞれが端末を取得するふりをさせます。
画面に必要なのは1つだけです。
そして、実際に端末を使用する代わりに、次のことができます。xterm
を使用して端末をエミュレートし、screen
の出力を表示します。
これは2つのプログラムの出力を示しています。
terminator
のように、xterm
およびscreen
atの機能を実装するターミナルエミュレータがいくつかあることに注意してください。同時に-もちろん、この質問に答えるためのベースとして使用すると、完全に混乱します。共通の gnome-terminal
やkonsole
など、さらに多くのターミナルエミュレータが1つのウィンドウのタブとして複数の端末をサポートしています。
それらは根本的に異なります。主な違いは次のとおりです。画面を使用すると、セッションを切り離して、後で別の場所から再接続できます。
たとえば、xtermでいくつかの重要なプロセスが実行されていても、残念ながらモニターが壊れて、コンピューターを使用できなくなったとします。
プロセスがscreen
で実行されている場合は、マシンに「ssh」して、使用できないxtermから「画面」を切り離し、ssh接続に再接続できます。
別のシナリオは、リモートマシンで実行されているプロセスです。 screenがないと、ssh接続を切断する必要がある場合にプロセスを再開するのは困難ですが、screenを使用すると簡単です。