- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:XプログラムのDISPLAYオプションについて)
XプログラムのDISPLAYオプションについて
このQ&Aのポイント
- XプログラムのDISPLAYオプションに関する質問です。
- Xeyesコマンドの-displayオプションについての違いについて調査しています。
- 「Xeyes -display :0.0」と「Xeyes -display localhost:0.0」のコマンドは意味が異なるのでしょうか?前者は表示されますが、後者はエラーになってしまいます。ネットワーク設定やホストの定義に関しても確認しましたが、解決できません。どなたかご教授いただけないでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
> 上記コマンドは同じ意味ではないのでしょうか。 いいえ、X(7)マニュアルによれば、前者はXクライアントからXサーバへ の接続において、「同じマシン上にあるサーバと通信するのに最も効率 の良い方法が使われる」とあり、大抵の場合UNIXドメインソケット (場合よって共有メモリ)が使用されるはずです。後者は、TCP/IPが 使われます。 XサーバにTCP/IP接続ができない理由はいくつか考えられます。 1. XサーバがTCP/IP接続を許可していない 最近のXサーバは、デフォルトでTCP/IPを受け付けない設定になって いるものが多いです。CentOS(Redhat)の場合は [システム]->[管理]->[ログイン画面]->[セキュリティ]->TCP接続を禁止する のチェックを外すことによってTCP/IP接続が可能となります。 2. localhost からのアクセスを許可していない 1.でTCP/IP接続を可能としても、「どこからのアクセスも 許可しない(localhostからも)」設定になっているため接続できない 可能性もあります。localhostからのアクセスを許可するには、 xhostコマンドを使用します。 xhost localhost と打ってみてください。Xサーバがlocalhostからのアクセスを許可する ようになります。
お礼
ご回答ありがとうございます。 また返信が遅くなりましたことをお詫びさせて頂きます。 UNIXドメインソケットが使用されているのであれば、インターネットドメインソケットとは違う動作になることが理解できました。 またXサーバへのTcp接続については2は試行ずみだったのですが、1に関しては全く意識していませんでした。 ご教授頂いた内容を試したところ(2)が正常に動作しました。 以下に確認項目を記載させて頂きます。 /etc/gdm/custom.confの[security]セクションにDisallowTCP=falseの行が追加。(テスト環境はgdmを使用) 上記設定の前後でXサーバ(Xorg)の起動オプションに-nolisten tcpが指定、未指定が制御される。 大変助かりました。 ありがとうございました。