Linux - X Window System



 ◆ X Window Systemとは

 X Windows System (
X11またはX) は多くのUNIXやLinuxで使用されているウィンドウシステムであり
 これにより
GUI を実現しています。X Window Systemではクライアント・サーバ方式を採用しています。
 Xサーバは、キーボードからの入力処理や、ディスプレイへの出力処理等のハードウェアの管理を行います。
 XクライアントはWebブラウザオフィスのアプリケーションなどに相当します。これらの処理の流れは以下。


     


 1. キーボードでデータを入力する。
 2. Xサーバは入力データを受け付けて、Xクライアント(アプリ)にデータを送る。
 3. Xクライアントは受け取ったデータを処理して、処理結果をXサーバへ送る。
 4. Xサーバは、Xクライアントから受け取った処理結果をディスプレイに出力する。



 ◆ X Window System - X.Orgの設定

 フリーのX Windows SystemとしてLinuxでは
XFree86が採用されていましたが、現在は X.Org が主流です。
 X.Orgの設定ファイルは
/etc/X11/xorg.confとなります。xorg.confファイルにはキーボード、ディスプレイ
 フォント、解像度などの設定が記述されています。xorg.confファイルは複数のセクションから構成されます。

セクション 説明
ServerLayout  入力 ・ 出力用デバイスの組み合わせとスクリーンの設定
Files  フォント関連のパスの設定
Module  Xサーバがロード予定のダイナミックモジュールの設定
InputDevice  Xサーバに対する入力デバイス(キーボード等)の設定
Monitor  システムにより使用されるモニタタイプの設定
Device  システム用のビデオカードの設定
Screen  ディスプレイの色深度と画面サイズの設定


 xorg.confファイルの設定を簡単に行うためのツールも用意されています。例えば、ハードウェアを走査して
 xorg.confファイルを自動生成するためには以下のコマンドを実行します。

 # Xorg - configure


 上記コマンド実行で、/root/xorg.conf.newファイルが生成されるので、そのファイルでテストを行います。

 # X -config /root/xorg.conf.new


 ◆ X Window System - ネットワーク経由での利用

 下図の通り、ネットワークを経由してX Window Systemを利用することができます。リモートアクセスでは
 ローカルコンピュータでXサーバが稼働して、リモートホストのXクライアントが、ローカルのXサーバを使用
 してディスプレイに表示します。いわゆるクライアント・サーバ配置の考え方とは逆のような感じとなります。


    



 Xサーバへのリモートアクセスを許可するためには
xhostコマンドを使用します。構文は以下の通りです。

 ◆ 構文 : xhost [ + または - ] [ ホスト名 ]
オプション 説明
+ ホスト名  指定したホストからのXサーバへの接続を許可
- ホスト名  指定したホストからのXサーバへの接続を拒否
+  アクセス制御の無効化 (全てのホストからの接続を許可)
-  アクセス制御の有効化 (アクセス許可されていないホストからの接続は拒否 )


 ◆ 実行例 : remotepc のXクライアントが、localpcのXサーバを利用できるよう許可する設定
 [ tester@localpc ] $ xhost +remotepc



 次に、Xクライアントの処理結果を表示するために、remotepcの環境変数DISPLAYでXサーバを指定して
 環境変数のDISPLAYをエクスポートを設定する必要があります。

 ◆ 構文 : ホスト名 : ディスプレイ番号

 ◆ 実行例 : remotepcのXクライアントが、localpcのXサーバを利用できるよう許可する設定

 [ tester@remotepc ] $ DISPLAY=localpc:0
 [ tester@remotepc ] $ export DISPLAY



 ◆ X Window System - Xサーバが起動するまでの流れ


   



 ◆ X Window System - Xクライアントコマンド

 X Window Systemの設定確認、情報収集のためのコマンドを以下に紹介します。

 ◆ showrgbコマンド : X Window Systemで利用可能な色とRGB値の情報確認
 $ showrgb


 ◆ xlsclientsコマンド : 実行中のXクライアントを表示
 $ xlsclients

 ◆ xwininfoコマンド :コマンド実行後に指定したウィンドウのサイズ、位置、色深度の情報確認
 ⇒ xwininfoコマンドにより、ウィンドウID、ウィンドウの位置、ウィンドウのサイズ、ウィンドウの色深度の情報が表示。

 $ xwininfo

 ◆ xdpyinfoコマンド : ディスプレイ情報の表示 (X Window System内のディスプレイ情報 )
 ⇒ xdpyinfoコマンドによって、ディスプレイ番号、スクリーン番号、解像度の情報が表示。
 $ xdpyinfo

 ◆ xwininfoコマンド、xdpyinfoコマンドで取得できる情報のイメージ


            



Linux 技術入門

Copyright(C) 2002-2024 ネットワークエンジニアとして All Rights Reserved