ものづくりのブログ

うちのネコを題材にしたものづくりができたらいいなと思っていろいろ奮闘してます。

【Mac】リモートサーバの GUI をローカルの Mac に表示させる方法

リモートサーバの 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 が立ち上がり疑似ターミナルが表示されれば成功です。