遠端加班利器-Vscode Remote-讓你颱風天也能在家上班 >.=

許恆修 | Heng-Shiou Sheu
5 min readSep 25, 2019

介紹

擁有多台電腦對現在的開發者來說是很正常的事情,更常見的是擁有效能強力的主機,跟隨身攜帶走方便簡報的筆電,問題來了,當你正在會場中,發現你跑的數字不對,需要遠端電腦協助時,該怎麼辦呢?這時候 ssh 就會登場了,那是老三步,現在我們要走新三步。

#Remote-SSH

螢幕截圖

你可以擁有更優質的選擇 Remote-SSh,這是一款由 M$ 提供在 VScode 上的新插件,可以讓你在遠端打開 Vscode 就操作遠端的 FileSystem,而且安裝過程十分無腦,成果更是大大滿足,這就像是,你只要去花十分鐘辦理快速通關,然後出國玩時,不用在那邊慢慢出關,一樣爽。

[安裝過程]

#Step1: 本地端確認公鑰是否存在

Mac/Linus 位置
~/.ssh/id_rsa.pub
M$ 位置
%USERPROFILE%\.ssh\id_rsa.pub

上述位置中沒有 id_rsa.pub 檔案的話,請移往 step2 繼續進行操作,如果你不確定手上的 *.pub 是什麼,也可以重新弄一個。

#Step2: 本地端生成公鑰(opt)

依照相方指令輸入參數以生成金鑰,好了後,再去 step1 當中的資料夾確認東西是否成功產出。

生成金鑰小天使
$ ssh-keygen -t rsa -b 4096

#Step3: 上傳公鑰到遠端

我們要把公鑰(id_rsa.pub)上傳到我們遠端電腦去。

macOS/linux 使用者請依照下方指令在本地端上傳公鑰

Template:
ssh-copy-id your-user-name-on-host@host-fqdn-or-ip-goes-here
範例:
ssh-copy-id -i ~/.ssh/id_rsa.pub Obama@172.71.86.12

M$ 請依照下方指令在本地端上傳公鑰

SET REMOTEHOST=your-user-name-on-host@host-fqdn-or-ip-goes-here

scp %USERPROFILE%\.ssh\id_rsa.pub %REMOTEHOST%:~/tmp.pub
ssh %REMOTEHOST% "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/tmp.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/tmp.pub"

#Step4: 編輯 ssh/config 檔案

這裡有兩個方法可以進行操作,全盤在 Vscode 中操作完設定,或是使用 terminal 進行編寫。筆者因為 Vscode 沒反應,採取 terminal 執行。

config 內容範例

Template:
Host example-remote-linux-machine
User your-user-name-here
HostName host-fqdn-or-ip-goes-here
範例:
Host 加班才會點開
User Obama
HostName 172.71.86.12

方法一、

方法二、

就依照下方指令操作

Template
$ vi /file-location/.ssh/config
範例:
$ vi /Users/Obama/.ssh/config

# Step5: 連接遠端電腦

到目前為止,已經完成前置作業了,剩下就是點點點而已

首先點擊左下角>< in green,會彈開小視窗選擇 connect to Host

接者選擇你剛剛創建的 config 檔案

這樣一來你就可以得到新世界了,歡迎來到遠端上班的世界。

有設定過後你就可以點選左排電腦 >< icon ,會出現你之前 ssh 過的資料夾,在點擊上面的 folder icon 之後,就可以直接連線。

[參考連結]

  1. https://code.visualstudio.com/docs/remote/ssh
  2. https://code.visualstudio.com/docs/remote/troubleshooting

--

--

許恆修 | Heng-Shiou Sheu
許恆修 | Heng-Shiou Sheu

Written by 許恆修 | Heng-Shiou Sheu

AI研究員 @喬泰科技,軟體工程師@微光國際,業界講師 @FCU 創能學院,Co-Founder @圖靈文本。專注將科技應用於改善生活中,持續性分享軟體架構設計、前沿人工智慧研究、公司治理等觀念。整合科技、人文思維於一體。聯絡 📪 hengshiousheu@gmail.com

No responses yet