#X Window Systemとは
多くのUNIXやLinuxで使用されているウィンドウシステムで、これによりGUIを実現している。
- X Window System上での処理の流れ
① キーボードでデータを入力する
② Xサーバーは入力データを受け付けて、Xクライアント(アプリ)にデータを送る
③ Xクライアントは受け取ったデータを処理して、処理結果をXサーバーに送る
④ Xサーバーは、Xクライアントから受け取った処理結果をディスプレイに出力する
#X Window Systemの設定ファイルX.Orgの設定
無料のX Window 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
# xorg.confファイルのテスト
$ X -config /root/xorg.conf.new
#ネットワーク経由での利用
ネットワークを経由してX Window Systemを利用することができる。リモートアクセスでは、ローカルコンピュータでXサーバーが稼働して、リモートホストのXクライアントが、ローカルのXサーバーを使用してディスプレイに表示する。クライアント・サーバー配置の考え方とは逆のような構成になる。
- X Window Systemのネットワーク経由での利用
Xサーバーへのリモートアクセスを許可するためにはxhostコマンドを使用する。
xhost [+または-] [ホスト名]
オプション | 説明 |
---|---|
+ホスト名 | 指定したホストからのXサーバーへの接続を許可 |
-ホスト名 | 指定したホストからのXサーバーへの接続を拒否 |
+ | アクセス制御の無効化(全てのホストからの接続を許可) |
- | アクセス制御の有効化(アクセス許可されていないホストからの接続は拒否) |
#Remote PCのXクライアントが、Local PCのXサーバーを利用を許可する設定
$ xhost +[Rempote PCのホスト名]
Xクライアントの処理結果を表示するために、Remote PCの環境変数DISPLAYでXサーバーを指定して環境変数のDISPLAYをエクスポートする必要がある。
# ホスト名:ディスプレイ番号
$ DISPLAY=localpc:0
$ export DISPLAY
Xサーバーが起動するまでの流れ
- コンソールから「startx」コマンドを実行
- xinitコマンド
- ~/.xinitrcがあれば実行。ない場合、「/etc/X11/xinit/xinitrc」を実行
- ~/.xsessionを実行。ない場合、~/.Xclientsを実行。更にない場合、「/etc/X11/xinit/Xclients」を実行
- KDEまたはGNOMEまたは、他のウィンドウマネージャが起動
Xクライアントコマンド
X Window Systemの設定確認、情報収集のためのコマンド集
コマンド | 説明 |
---|---|
showrgb | X Window Systemで利用可能な色とRGB値の情報表示 |
xlsclients | 実行中のXクライアントの表示 |
xwininfo | コマンド実行後に指定したウィンドウのサイズ、位置、色深度の情報確認 |
xdpyinfo | ディスプレイの情報の表示(X Window System内のディスプレイ情報) |