VSCodeでsshを利用し、リモートのMacOSに接続する

スポンサーリンク

研究室の、つまりリモートのMacOSのコンピューターにVSCodeで接続しようとしたのに、うまくいきませんでした。原因はおそらくリモート先がMacOSというのが特殊なシチュエーションだった、ということだと思われます。

今回の学び

  • 多段ssh。踏み台とか言ったりする。ProxyCommandを利用することで一発で通せる
  • VSCodeのRemote-SSHパッケージを利用する。リモートサーバーで、vimやEmacsではなくVSCodeでコードが書ける
スポンサーリンク

一通りの設定

公式ドキュメントをGoogle翻訳してそのとおりになぞっていけばいけるはず(参考の1つ目)。Windowsは未検証ですが、Windows用の対応も書かれているので問題ないはず。

Developing on Remote Machines using SSH and Visual Studio Code
Developing on Remote Machines or VMs using Visual Studio Code Remote Development and SSH

そのままでは接続できないので、少し設定を加える。

設定ファイルをいじる(トラブルシューティング)

.ssh/config

command+shift+Pキーでコマンドパレットを開き、「ssh config」と検索すると出てくる「Remote-SSH: Open configuration…」を選択。候補が出てきたら、Users下のconfigを選ぶ。

Users/<PCのユーザー名>/.ssh/config
Host <任意の名前>
HostName <hostname1>
User <username1></username1></hostname1>

Host <任意の名前>
HostName <hostname2>
User <username2>
ProxyCommand ssh -W %h:%p <hostname1>

上の設定がsshで単純に接続するための設定。下の設定は上の設定を踏み台にしたssh接続を一回でできるようにする設定。ProxyCommandを用いることで手間を減らせる。

settings.json

またコマンドパレットを開き、「基本設定:設定(JSON)を開く」を選択。JSONファイルを以下のように編集する。

Visual Studio Code Remote Development Troubleshooting Tips and Tricks
Visual Studio Code Remote Development troubleshooting tips and tricks for SSH, Containers, and the Windows Subsystem for Linux (WSL)
json:Users/<username>/Library/Application Support/Code/User/settings.json
{
“remote.SSH.showLoginTerminal”: true,
“remote.SSH.useLocalServer”: false,
}

この設定をすることで、おそらくLinux用になっているリモートサーバーの設定を、MacOS用に選択できるようになるはず。ここが大事。勝手に設定ファイルが書き換わります。

結果:リモート上でVSCodeが使える

CUIエディタとは作業効率が比べ物にならないと思う。よい。

参考(全部ここに載ってる)

プログラミング
スポンサーリンク
スポンサーリンク
スポンサーリンク
かろめも

コメント