\r\n\r\n

linuxのttyとは?(とttyコマンドの使い方)

ttyコマンドは何をするコマンドですか?使用中の端末名を出力します。ttyは "teletypewriter "の略です。コマンドの名前にはどのようなエピソードがあるのでしょうか。これはもっと説明が必要ですね...。

ttyコマンドは何をするコマンドですか?使用中の端末名を出力します。ttyは "teletypewriter "の略です。コマンドの名前にはどのようなエピソードがあるのでしょうか。これはもっと説明が必要です。

19世紀のテレタイプライター

1830年代から40年代にかけて、テレタイプライターと呼ばれる機械が開発された。この機械は、印刷されたメッセージを「ネットワークを介して」遠く離れた場所に送ることができる。これらのメッセージは、送信者がキーボードで入力したものです。受信側で紙に印刷されていた。それまでモールス信号や類似の暗号に頼っていた電信業界にとって、進化を遂げたものであった。

情報は符号化されて送信され、受信されて復号され、印刷される。情報の符号化・復号化には、いくつかの技術が使われてきた。最もよく知られ、最も多く使われているのは、1874年にエミール・ボードーが特許を取得したもので、ボーレートはこれにちなんで命名された。彼の文字符号化方式は、ASCIIより89年も前のものである。

ボードの暗号は、やがてテレタイプの暗号規格に最も近いものになり、ほとんどの**商人**に採用されるようになった。ボードのオリジナルハードウェアは、ピアノの鍵盤のような5つの鍵盤だけで設計されていた。オペレーターは、アルファベット1文字ごとに決まったキーの組み合わせを覚えるように言われました。やがて、Podoteのコーディングシステムは、従来のキーボードレイアウトと組み合わされるようになりました。

この進歩にちなんで、これらの機械は「テレタイプライター」と名づけられた。これがテレックスタイプライターとなり、やがてTTYと略されるようになったわけですが、では、電信とコンピュータにはどんな関係があるのでしょうか。

アスキー・テレックス

1963年にASCIIが登場すると、テレタイプライター**のベンダーに採用された。電話が発明され、普及しても、テレタイプライターは依然として強力であった。

テレックスとは、世界中にあるテレタイプライターのネットワークで、世界中に文字メッセージを送ることができる。第二次世界大戦後から1980年代のファクシミリブームまで、文字によるメッセージ伝達の主要な手段であった。

コンピューターも進化しています。リアルタイムでユーザーと対話し、複数のユーザーをサポートすることが可能になってきています。昔のように一括して作業する方法では不十分になってきています。人々は結果が出るまで24時間以上待つことを望んでいないのです。**ミシン目入りのカードの束や、結果を一晩中待つことは、もう許されません。

人々は、コマンドを入力すると結果が送られてくるようなデバイスを求めている。人々は、効率性を求めている。

テレックスタイプライターが用途を変える

入出力機器には、テレタイプライターが最適です。結局のところ、メッセージを入力し、符号化し、送信し、受信し、復号し、印刷することができる装置なのです。

テレタイプライターは、接続の相手側の機器が他のテレタイプライターでない場合、何を気にするのでしょうか?同じ暗号語を話し、メッセージを受信して送り返すことができれば、テレタイプライターは幸せである。

もちろん、多かれ少なかれ標準的なキーボードを使用します。

ハードウェアアナログ式テレタイプライター

テレタイプライターは、その時代の大型マイクロコンピューターやメインフレームコンピューターとのやりとりのデフォルトの方法となった。

やがて、その電気機械式機械を電子技術で模倣したデバイスに取って代わられた。ロール紙をCRT(ブラウン管)に置き換えたのだ。パソコンから応答するときも、震えることはなかった。カーソルを画面内で移動させる、画面を消す、文字を太くするなど、これまで不可能だった機能が可能になったのです。

DEC VT05は、仮想テレタイプライターの初期の例で、有名なDEC VT100の前身である。DEC VT100は何百万台と売れた。

テレタイプライターをシミュレートするソフトウェア

LinuxやmacOSなどのUnix系OSのデスクトップ環境では、ターミナルウィンドウやxterm、K○oleなどのアプリケーションが仮想テレタイプライターの一例として挙げられます。しかし、これらはすべてソフトウェアでシミュレートされています。擬似テレタイプ機と呼ばれるものです。これを短縮して臨時事務局とした。

そこで便利なのがttyです。

ttyは何を教えてくれるのでしょうか?

Linuxでは、すべてのターミナルウィンドウの擬似テレタイプライタ(PTS)からの接続を処理する擬似テレタイプライタマルチプレクサが存在します。マルチプレクサがマスターデバイスで、PTSがスレーブデバイスです。マルチプレクサは、/dev/ptmxにあるデバイスファイルを通じてカーネルからアドレス指定されます。

ttyコマンドは、擬似テレタイプスレーブがホストとのインターフェイスに使用するデバイスファイルの名前を表示します。事実上、これはターミナルウィンドウの番号です。

ttyがターミナルウィンドウに対して何を報告するか見てみましょう。

tty

この応答は、/dev/pts/0にあるデバイスファイルに接続したことを示しています。

私たちのターミナルウィンドウは、擬似テレタイプマルチプレクサと連動する擬似テレタイプ(PTS)として機能するテレタイプライター(TTY)をソフトウェアでエミュレートしたものです。それがたまたま「0」という数字だった。

サイレント・チョイス

s(サイレント)オプションは、ttyが何も出力しないようにします。

tty -s

ただし、終了値が出ます。

  • 0:標準入力がTTYデバイス(アナログまたは物理)である場合。
  • 1:標準入力がTTY機器でない場合。
  • 2:シンタックスエラー、不正なコマンドライン引数が使用されました。
  • 3:書き込みエラーが発生しました。

これは、Bashスクリプトで最も役に立つと思われます。しかし、コマンドラインでも、ターミナルウィンドウ(TTYやPTSセッション)でのみコマンドを実行する方法を示すことができます。

tty -s && echo "In a tty"

TTYセッションで実行しているため、終了コードは0です。 2番目のコマンドを実行します。

WHOコマンド

他のコマンドは、あなたのTTY番号を表示します。whoコマンドは、あなたを含め、ログインしているすべてのユーザーをリストアップします。

アレックとメアリーは、臨時事務局IとIIに接続されたLinuxコンピュータにリモートで接続されている。

ユーザーdaveは":0 "に接続されていると表示されます。

実際に接続されている画面やキーボードを示しています。画面とキーボードがハードウェアデバイスであっても、デバイスファイルを介してマルチプレクサに接続されています。ttyはこれを/dev/pts/2と表示しています。

who tty

関連:Linuxで現在のユーザーアカウントを確認する方法

ttyを訪問

Ctrl+Altを押しながらファンクションキーを押すと、フルスクリーンTTYセッションにアクセスすることができます。

Ctrl+Alt+F3で、tty3のログインプロンプトが表示されます。

ログインしてttyコマンドを発行すると、/dev/tty3に接続されていることが確認できます。

これは疑似テレタイプ(ソフトウェアでシミュレート)ではなく、仮想テレタイプ(ハードウェアでシミュレート)である。パソコンに接続した画面とキーボードを使って、かつてDECのVT100がやっていたような仮想のテレタイプライターをシミュレートするものです。

ファンクションキーCtrl+AltとファンクションキーF3~F6を併用し、お好みでTTYセッションを4つ開くことができます。例えば、tty3にログオンしてCtrl+Alt+F6を押すと、tty6に移動することができます。

グラフィカルなデスクトップ環境に戻るには、Ctrl+Alt+F2キーを押してください。

Ctrl+Alt+F1を押すと、グラフィカルデスクトップセッションのログインプロンプトが表示されます。

一応、Ctrl+Alt+F1~Ctrl+Alt+F6でフルスクリーンのTTYコンソールを開き、Ctrl+Alt+F7でグラフィカルなデスクトップ環境に戻るようになっています。古いLinuxディストリビューションをお使いの場合、おそらくこの方法でシステムが動作していると思われます。

これは、Manjaro、Ubuntu、Fedoraの現行バージョンでテストされ、いずれも以下のような挙動を示しました。

  1. Ctrl+Alt+F1:グラフィカルデスクトップ環境のログイン画面に戻ります。
  2. Ctrl+Alt+F2:グラフィカルなデスクトップ環境に戻る。
  3. Ctrl+Alt+F3:TTYを開く 3.
  4. Ctrl+Alt+F4:TTYを開く 4.
  5. Ctrl+Alt+F5:TTYを開く 5.
  6. Ctrl+Alt+F6:TTYを開く 6.

これらのフルスクリーンコンソールにアクセスすることで、コマンドラインのみのLinuxインストールを利用することができ、多くのLinuxサーバーは、複数のコンソールを利用できるように構成されています。

Linuxマシンでグラフィカルなデスクトップ環境を使って作業をしていて、何かの拍子にセッションがフリーズしてしまったことはありませんか?TTYコンソールセッションの1つにジャンプして、状況を改善することができます。

top と ps を使って失敗したアプリケーションを特定し、kill を使って終了させることもできますし、単に shutdown を使ってコンピューターの状態が許す限り優雅に終了させようとすることもできます。

関連:Linuxのターミナルからプロセスを終了させる方法

歴史が詰まった3文字

ttyコマンドは、19世紀末に開発されたデバイスに由来していますが、1971年にUnixに登場し、現在でもLinuxやUnix系OSに含まれています。

このチビには、いろいろなストーリーがあるんだ。

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ