Xサーバーのホスト名を見つける方法

Xサーバーのホスト名を見つける方法

私はコンピュータにあり、X11転送を使用してコンピュータにsshを使用しているとしますlocal。 SSHセッションで実行されているプログラムが表示されていることを知らせるremote方法はありますか?理想的には、Xサーバーを実行しているコンピュータのホスト名を知りたいです。私の目標は、プログラムが表示されるコンピュータによって異なる動作を引き起こすことです。remotelocal

ベストアンサー1

Xサーバーはホスト名をクライアントに報告しないようです。クライアントは接続するホスト名を知る必要がありますが、SSH経由で接続する必要があります。つまり、localhost転送にSSHを使用します。

OpenSSH サーバーはSSH_CLIENT環境変数を設定します。ここでは、クライアントのIPアドレスを読み取ることができます。これはサーバーが見ているアドレスなので、同じNATの背後にあるコンピュータを区別することはできません。これは、他に何も起こらないという前提の下で、Xサーバーのアドレスです(SSH転送、クライアントのリモートXサーバー...)。 Emacsを実行するためにフレームワークを生成するためにemacsclientを使用した場合ではなく、EmacsがそのSSH接続で開始された場合にのみEmacsから環境変数を取得できることに注意してください。

x-server-XXXEmacsの機能を使用して、x-display-XXXモニターの特定の属性(サイズ、色深度、Xベンダーなど)を取得できますdisplay-XXX

おすすめ記事