モニターごとに複数の X ディスプレイ

モニターごとに複数の X ディスプレイ

私は、モニターごとに 1 つずつ、合計 3 つのディスプレイを持つターゲット システム用のソフトウェアを開発しています: localhost:0.0、、localhost:0.1localhost:0.2

ターゲット システムにはモニターが 3 台ありますが、開発システムにはモニターが 2 台しかありません。ソフトウェアを開発システム (必要なディスプレイがない) で動作させるには、すべてのウィンドウをlocalhost:0.0適切なディスプレイの代わりに配置して、開発システムでテストできるようにします。

時々私は本当に必要3 つのディスプレイでテストして、各ディスプレイに適切な内容が表示されていることを確認します。Windows システムの場合は、3 つのウィンドウ (それぞれが個別のディスプレイ、、および ) を表示するモードで X サーバーを実行できます。0.0その後0.10.2X 転送で ssh を使用します。いいですね。Linux システムでも同様のことを行う方法はありますか?

私が使用している Linux システムは、Windows コンピューターからリモート デスクトップ接続できる Red Hat サーバーです。

1 つのモニターで別々の X ディスプレイを実行する方法はありますか? それぞれに別々のウィンドウがあるのが望ましいですが、必ずしも必要ではありません。

答えを探しているうちに、私が理解していれば(あるいは同じことについて話していると確信していれば)役立つかもしれないことが複数見つかりました。

私が試した解決策は 1 つあります。スーパーユーザーに「複数の X インスタンス」というタイトルの質問があり、その質問は「startx -- :1... を介して複数の X インスタンスを実行できます」という内容で始まります。試してみましたが、PAM 認証エラーが発生しました。Google で検索すると、ルートから別のユーザーに su した後にのみこの問題が発生する人が多数見つかりますが、私にはルート アクセス権限がありません。これが私が望んでいることなのかどうかはわかりません。

私が見つけた別の情報源:複数のXディスプレイを実行するにはどうすればいいですかこれは、別のスーパーユーザーの質問で、「X ディスプレイを 2 つ実行したいのですが、1 つは alt + F7 で、もう 1 つは alt + F8 で実行します。どうすればいいですか?」というものです。この質問に対する回答は、xinitまたは を使用しますstartx

startx/はxinit私がこれまで出会った中で最も有望な手がかりです。これが私が必要としているものであり、私が正しく行っていないだけであれば、それらについて別の質問をすることができます。

答え1

使用できますエックスネスト最大3画面をサポートします。

Xnest -scrns 3 :1

3 つのウィンドウが作成され、それぞれが 1 つのディスプレイ上の実際の画面のように X11 クライアントに表示されます。

-scrns int このオプションは、ネストされたサーバーに作成するスクリーンの数を指定します。各スクリーンに対して、Xnest は個別のトップレベル ウィンドウを作成します。各スクリーンは、クライアント ディスプレイ名指定のドットの後の番号によって参照されます。たとえば、xterm -display :1.1 は xterm(1) クライアントを開きます...


を実行するためにrootになる必要はなくXnest、rpmリポジトリにアクセスできる場合はダウンロードする必要もありません。

yumdownloader xorg-x11-server-Xnest

そして、rpmファイルを入手し、それを解凍します。

rpm2cpio thefilewegot.rpm | cpio -civd ./usr/bin/Xnest

これを実行できますusr/bin/Xnest :1 ...

関連情報