リモートサーバの GUI をローカルの Mac に表示させる方法をここにメモします。
エラー
準備なしで、Macからリモートサーバに接続し、接続先から xterm コマンドを実行するとエラーになります。
ローカルサーバ
ssh コマンドに -X オプションをつけてリモートサーバに接続します。
% ssh -X {{リモートサーバ}}
リモートサーバ
リモートサーバ(ubuntu)から xterm コマンドを実行すると以下のエラーになります。
$ xterm xterm: Xt error: Can't open display: xterm: DISPLAY is not set zsh: exit 1
準備
ローカルサーバ(Mac)側の作業
XQuartz インストール
Mac 用の X Window System である XQuartz をインストールします。
ダウンロードしインストールします。
確認
インストール後にターミナルを立ち上げ、以下のコマンドを実行します。
DISPLAY 環境変数が設定されていれば成功です。
% echo $DISPLAY
リモートサーバ側の作業
sshd 設定確認
以下の確認を行います。
- "X11Forwarding yes"となっていること
$ grep X11Forwarding /etc/ssh/sshd_config X11Forwarding yes
動作確認
準備が完了したら、再度 ssh で接続し、xterm コマンドを実行してみます。
% ssh -X {{リモートサーバ}} $ xterm
ローカルサーバ(Mac)から XQuartz が立ち上がり疑似ターミナルが表示されれば成功です。