Xnest
![](http://upload.wikimedia.org/wikipedia/commons/thumb/3/31/KDM-Xnest.jpg/400px-KDM-Xnest.jpg)
Xnest は X Window System サーバの一種であり、1つのウィンドウ内にその出力を表示する。つまり、Xnest は X Window System の画面が1つのウィンドウとして通常の画面上に開けるようになっている。
プロトコルレベルでは、Xnest はホストとなるウィンドウのクライアントのように振る舞い、Xnest のウィンドウ(セッション)内でウィンドウを開くアプリケーションから見ればサーバとして振舞う。
Xnest は他のコンピュータの仮想デスクトップをウィンドウ内で動作させることができる。Xnest はサーバのデバッグに使われたり、アプリケーションが各種画面サイズでうまく動作するかのテストに使われる。実際、ユーザーはXnestのウィンドウのサイズを選択でき、それが仮想画面のサイズになる。そのため、PDAの画面サイズでXnestのウィンドウを起動し、アプリケーションがその機器の画面の大きさでうまく機能するかどうかをテストするなどの利用法がある。
リモートデスクトップへのアクセス
[編集]Xnest は他のコンピュータのデスクトップをローカルに表示するのにも使われる。
- XDMCPを使うと、Xnestで他のコンピュータのデスクトップをウィンドウ内で動作させることができる。これは例えば
Xnest :10 -query other_computer_name
などとすればよい。リモートマシンは表示を行いたいマシンからの XDMCP コネクションを受理するよう設定しておく必要がある。 - また、Xnext をリモートマシン上で動作させ、そのウィンドウをローカルのディスプレイに表示することもできる。つまり、XnestをリモートのXアプリケーションとし、ローカルなXサーバと接続させる(環境変数 DISPLAY を設定し、xauthなどを使ってリモートのアプリケーションからの接続を許可する)。そして、そのXnestをリモートマシンのXサーバとして機能させる(
startx -- Xnest -geometry 800x600
などとする)。これには例えばSSHを使い、ssh -X other_computer_name
などとして接続することで設定する。
さらに、Xnest は普通のXサーバとしても機能するので、リモートでアプリケーションを起動し、それらをローカルのXnestに接続することができる。
ドライバ版
[編集]2011年5月に、xorg.conf で指定して利用する、ドライバ版の xf86-video-nested が公開になり[1]、2013年リリース予定の X11R7.8 では単体アプリとしての Xnest は廃止が検討されている[2]。