Linux端末の概念と関連命令


Linuxにおける端末の概念:
Linuxオペレーティングシステムを使用する過程で、端末(terminal)を通じてコマンドと受信情報を入力することができ、ユーザーがコンピュータと対話したい場合は端末に使用するので、ディスプレイとキーボードは端末であり、ディスプレイから出力された情報を受信し、キーボードを通じてコンピュータに情報を入力し、ディスプレイとキーボードは実際に存在する物理デバイスであり、物理端末と呼ぶことができます.
   
先ほど物理端末といえば、物理端末のほかに、仮想端末、グラフィック端末、アナログ端末などの端末タイプがあります.
    
仮想端末:仮想端末は物理端末の上で、ソフトウェアの方式で仮想的に実現する端末で、仮想端末はttyと呼ばれて、私達は同じ物理端末の上で複数の仮想端末を仮想化することができて、Centos 6の中でデフォルトは6つの仮想端末があって、私達はCtrl+Alt+Fx(f 1、f 2・・・f 6)ショートカットキーを使ってこの6つの仮想端末の間で切り替えて、linuxではすべてのファイルが接続されています.これらの仮想端末が抽象化したファイル名は/dev/tty#で、仮想端末は物理ホストでしか使用できません.リモートツールでホストにリモートで(例えばxshellやvncでリモートで)来ると、ショートカット切り替えで仮想端末に切り替えることはできません.
    
グラフィック端末:グラフィック端末は上記の仮想端末の一種であるため、物理端末に基づいてソフトウェアで仮想化されているが、デスクトップ環境を同時に提供し、Centos 6を起動する際にグラフィック化起動を使用し、グラフィック化デスクトップを見た後、Ctrl+Alt+f 2を押すとCentOSの2番目の仮想端末に切り替わり、この仮想端末は文字インタフェースの仮想端末であり、2番目の仮想端末ではCtrl+Alt+f 1を押すと、またグラフィックインタフェースに戻ります.ここでのグラフィックインタフェースと2番目の仮想端末は、CentOSに付属している6つの仮想端末ですが、1番目の仮想端末はグラフィック端末であり、仮想端末tty 1でもあります.
    
アナログ端末:アナログ端末を一つのプログラムと理解することができ、このプログラムは端末シミュレータであり、端末シミュレータによってシミュレータされた端末をアナログ端末と呼び、ptsとも呼ばれ、グラフィックス起動Centos 6では、デスクトップの空白を右クリックし、単機Open in Ternimalで、コマンドラインウィンドウを開くことができ、このコマンドウィンドウはアナログ端末である.あるいは、リモートsshプログラムを使用して逆開きのコマンドラインインタフェースもアナログ端末であり、アナログ端末のファイル/dev/pts/#である.
端末関連コマンド:
whoコマンド
whoコマンドを使用して、現在どのくらいの端末がサーバに接続されているかを確認します.   
[root@cos68 ~]# who
root     tty2         2016-07-23 13:40
root     tty1         2016-07-23 13:34 (:0)
root     pts/0        2016-07-23 13:34 (:0.0)
root     pts/1        2016-07-23 14:38 (192.168.131.1)

表示結果から、4つの端末はrootユーザーがログインしていることがわかります.tty 2は私がCtrl+Alt+f 2を押して呼び出した仮想端末で、tty 1はシステム起動後にデフォルトで入ったグラフィック化インタフェース(グラフィック端末)、pts/0は私がグラフィック化インタフェースの右クリックメニューから開いたシミュレーション端末で、pts/1はxshellというsshツールで開いたシミュレーション端末です.
whoコマンドを使用せずに、wのみを入力し、どのユーザが端末にログインしたのか、ログイン時間、何をしているのかなどの情報が表示され、whoコマンドよりも詳細に返されます.
[root@cos68 ~]# w
 17:27:40 up  3:54,  3 users,  load average: 0.59, 0.22, 0.10
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     tty1     :0               13:34    3:53m 10.41s 10.41s /usr/bin/Xorg :0 -br -verbose -audit 4 -au
root     pts/0    :0.0             13:34   57:00   0.24s  0.24s /bin/bash
root     pts/1    192.168.131.1    14:38    0.00s  0.31s  0.06s w

who am iコマンドまたはttyコマンド
who am iコマンドを使用して、現在使用されている端末がどの端末なのかを表示します.
[root@cos68 ~]# who am i
root     pts/1        2016-07-23 14:38 (192.168.131.1)

またsshツールにwho am iコマンドを入力したため、返された結果、私が現在使用している端末タイプはptsタイプ、端末番号はpts/1であり、同時に、この端末のログイン時間と私のクライアントIPも返された.
ttyコマンドを使用して、現在の端末を表示することもできます.
[root@cos68 ~]# tty
/dev/pts/1

chvtコマンド
chvtコマンドを使用して各仮想端末間を切り替えると、chvtはchange virtual terminalの略と見なすことができるので、chvtは各仮想端末間のみを切り替えることができ、ptsとtty間を切り替えることはできないので、sshリモートツールでchvtコマンドを実行したり、vncの表示インタフェースでchvtコマンドを実行したりしないでください.sshリモートツールとvncリモートツールが開いている端末はptsタイプのシミュレーション端末であるためです.
Ctrl+Alt+f 2ショートカットキーを使用して2番目の仮想端末(tty 2)を開き、Ctrl+Alt+f 3を使用して3番目の仮想端末(tty 3)を開き、システム起動後にデフォルトで入力されるグラフィックスインタフェース(tty 1)を加えると.
では、グラフィックスインタフェースでコマンドライン端末(アナログ端末)を開き、アナログ端末に次のコマンドを入力すると、グラフィックスインタフェース(tty 1)から3番目の仮想端末(tty 3)に切り替えることができます.
[root@cos68 ~]# chvt 3

グラフィック化コマンドラインでchvt 3を実行した後、tty 3に切り替えたはずなので、現在のtty 3にchvt 1を入力すると、グラフィックインタフェース(グラフィック仮想端末)に切り替えることができます.
マゴ教育Linux学習ノート
http://www.magedu.com/
http://mageedu.blog.51cto.com
.