Top page
X Server 設定(例)
X Windowとは
X Windowは、Unix
の標準GUIプラットフォームとして開発され、Linuxでも使われています。
現在の最新バージョンは
X11 となっています。
古い規格ですが、現在まで基幹の構造を変えることなく、高い互換性を保っています。
サーバ -
クライアント構成をとっており、アプリケーションを実行するサーバコンピュータにGUIを提供する
Xクライアントを置き、
端末コンピュータ
(クライアントコンピュータ/ローカル端末)
に描画を担当する Xサーバを置きます。
XクライアントはXサーバに描画命令メッセージを送信し、Xサーバが端末画面に描画します。
この構成のため、ネットワークを介している/介していないにかかわらず、また、Xサーバをネストしたような
複雑な構成でもGUIアプリケーションを実行できます。
どのような場合にX Serverが必要か
Windows, macOS:
- 本Webで配布しているLauncher.py等のpythonプログラムは、Windows,
macOSの持つGUIで動作しますので、
端末PCで実行するだけであれば、X Serverのインストールは不要です
- Linux/UnixのGUIアプリをサーバ側で実行し、ユーザの端末で描画する場合、端末にX
Serverをインストールする必要があります
macOS:
- Launcher.pyの一部の機能は、xterm を必要とします。xterm
を実行するために、X Serverのインストールが必要です。
Linux/Unix:
- Linux/UnixをGUIデスクトップで利用している場合は、すでにX11が使われているので、新たなインストールは不要です
- GUIデスクトップを利用していない場合、X
Serverのインストールが必要な場合があります
Xアプリ (X11 app, X app) を実行するために
Xアプリを実行するためには、ユーザが使っている端末側に
X Server ソフトウェアをインストールし、
Xクライアントがどの端末のどのディスプレイ
(物理的なディスプレイではなく、X
Serverが管理している論理的ディスプレイ)に
描画するのか、知らせる必要があります。
X Serverソフトウェアのインストール:
・ Linux/Unix/WSLの場合
GNOME, KDEなどのGUIデスクトップを使っている場合、新たなインストールは不要です。
そうでない場合、X.orgなどからインストールしてください
・ Windowsの場合
MobaXtermを使うことを推奨します https://mobaxterm.mobatek.net/
・ macOSの場合
XQurtzのインストールが必要です https://www.xquartz.org/
X Serverに描画端末情報を伝える方法:
- DISPLAY環境変数を使う方法
% export DISPLAY=[描画クライアント端末のIPアドレス/ホスト名]:[ディスプレイ番号]
例: export DISPLAY=192.168.1.10:0
- SSH の X11 port forwardingを使う方法
1の方法では、描画端末のIPアドレスを知っている必要がありますし、端末が変わるたびにDISPLAY変数を変えないといけません。
SSHにはport forwardingと呼ばれる機能があり、-X
オプションをつけてサーバコンピュータ
(Xクライアント) にログインすることで、
端末コンピュータの情報をサーバコンピュータに転送して設定してくれます。
% ssh -X [サーバコンピュータのIPアドレス/ホスト名]
これでうまくいかない場合、-Y
オプションも指定してみてください。
% ssh -XY [サーバコンピュータのIPアドレス/ホスト名]
参考: SSH
の X, Y オプションと 「~/.ssh/config」
の ForwardX11, ForwardX11Trusted の関係について - Qiita
- Windowsで 2. を使う場合、MobaXterm
を使うことを推奨します。
MobaXterm で 'session' を作ることにより、X11 port
forwardingが使われます。
ツールバー左端の "session"
をクリックし、"SSH"
アイコンをクリックしてください。
"Remote host" と "user name"の設定をすれば、ssh
-X でアクセスできます。
SSH keyを設定する必要がある場合は、"Advanced SSH
settings" の "use private key"で、
.ssh/ 以下にあるprivuvate keyファイルを指定してください。
Xアプリの動作確認
Linux/UnixpでX11環境がインストールされている場合、適当なXアプリを実行して、端末に表示されているかを確認します。
以下のアプリがインストールされている可能性が高いので、試してみてください、
- xclock 時計
- xeyes マウスカーソルを目が追うおもちゃアプリ
- xterm X端末
- xemcas エディタ
いずれも見つからない場合、X-Apps等をインストールする必要があります