首頁/ 汽車/ 正文

VSCode作為終端工具替代FinalShell和MobaXterm

轉自我的個人部落格https://blognas。hwb0307。com。歡迎關注!

前言

不知小夥伴們都用過哪些終端工具?我有用過XShell、FinalShell和MobaXterm,其實都各有各的特點,特別是MobaXterm,我覺得是比較完美的終端工具。不過,今天和小夥伴們討論的時候,發現

VSCode也可以作為一個終端工具

VSCode作為終端工具替代FinalShell和MobaXterm

所以有點按捺不住那顆想要折騰的心了!

而且,我們可以

直接利用VSCode本地編輯器對遠端檔案進行預覽和編輯

,這是使用VSCode作為終端工具的最大賣點之一吧:

VSCode作為終端工具替代FinalShell和MobaXterm

你甚至可以用來預覽圖片!一般的終端工具應該是做不到的。

我平時使用Python的時候就會使用VSCode;VSCode本身也是一個比較流行的IDE。我個人喜歡VSCode的主要原因是因為它相容性比較好,外掛功能強大,顏值高,比較適合我這種程式設計小白。初步體驗了一下它的SSH功能,效果不錯!如果你本來就在使用VSCode,它也可以作為一個終端工具喔!你也不用糾結要用Final Shell還是MobaXterm了!

這一期我們不講怎麼安裝VSCode,大家可以在官網下載並安裝即可:VSCode下載。對於Windows系統的使用者來說,和安裝一般的。exe軟體沒有太大的區別。我主要講(shui)一下

怎麼將VSCode打造成一個遠端訪問VPS的終端工具

安裝Remote-SSH擴充套件

首先,我們要在本地VSCode客戶端上安裝一個VSCode的擴充套件,叫Remote - SSH。它的主要作用就是提供ssh訪問的基本功能:

VSCode作為終端工具替代FinalShell和MobaXterm

成功安裝後,左側欄中會出現一個電腦顯示器的圖示。依下圖所示開啟config檔案(對Windows使用者來說,路徑一般是C:\Users\Administrator\。ssh\config),進行相關的設定:

VSCode作為終端工具替代FinalShell和MobaXterm

內容類似於:

Host 主機1 HostName 192。168。1。151 User user1 Port 22Host 主機2 HostName 192。168。1。152 User user3 Port 1452Host 主機3 HostName 192。168。1。153 User user3 Port 3355

以主機1為例,引數解釋如下:

Host

:主機的名字。隨便取,只為了自己識別方便。

HostName

:通常是一個ip地址,可以是公網ip;如果是訪問區域網機器,就寫一個區域網ip。

User

:使用者名稱

Port

:ssh埠。預設是22;如果你的VPS自定義了ssh埠,比如1234,就使用1234。

加幾臺主機就會顯示幾臺主機,沒有數量限制。注意,

不需要填寫密碼

在VPS上新增本地公鑰

不太推薦登陸時使用密碼,直接讓遠端的VPS信任本地主機就好。一般來說,如果你的電腦裡用過ssh服務的話,。ssh資料夾裡都會有這兩個檔案:

id_rsaid_rsa。pub

如果沒有這兩個檔案,對Windows使用者而言,可以用管理員許可權開啟cmd或者Power Shell,輸入ssh-keygen,按提示操作即可生成這兩個檔案。id_rsa是私鑰,只能儲存在本地電腦,不可讓其它人知道;id_rsa。pub是公鑰,儲存在遠端VPS中,讓其它人知道也無所謂(一般也只是自己知道啦)。

這時,如果你想要透過訪問某VPS中的某個使用者,要先利用該使用者的身份登陸VPS,進入使用者的home目錄,然後將id_rsa。pub的內容新增到該使用者的。ssh資料夾裡的authorized_keys檔案裡,類似於:

VSCode作為終端工具替代FinalShell和MobaXterm

這樣,

遠端VPS就會信任我們的本地電腦,訪問的時候就不需要密碼了

如果這個使用者沒有。ssh和authorized_keys這兩個檔案(如果從來沒設定過,一般是沒有的),可以手動建立,然後執行命令sudo service sshd restart重啟ssh服務生效。

讓VPS信任我們的本地電腦後,我們直接右鍵某條SSH記錄,直接點選Open on SSH Host in Current Window(在本視窗訪問)或者Open on SSH Host in New Window(在新視窗訪問):

VSCode作為終端工具替代FinalShell和MobaXterm

即可正常訪問。登陸成功後,左下角會出現SSH:主機1之類的字樣。

第一次連線時,由於需要在VPS端安裝vscode sever,所以時間會略長。之後登陸速度就會蠻快的了。

開啟Shell

預設情況下,按Ctrl+j就可以調出Shell,再按一次Ctrl+j就會隱藏Shell。按右邊的^圖案可以向上填充Shell。這個是VScode的常規操作,與Remote SSH並無直接關聯。

VSCode作為終端工具替代FinalShell和MobaXterm

選擇目錄

有時候,我們想進入某個目錄對某個檔案進行編輯。預設情況下,你可以按Ctrl+k+o就可以調出目錄選擇;按Esc就可以退出選擇。通常,你可以選擇一個高階目錄,比如根目錄/,這樣就不需要頻繁地切換目錄。VSCode每次切換這個工作目錄都要重新連線一次。

當然,你編輯檔案的時候,許可權來自之前authorized_keys所對應的使用者的許可權。比如你登陸的是一個普通使用者,是沒有辦法直接讀寫或執行root使用者的檔案的(除非root給予你相應的許可權)。

VSCode作為終端工具替代FinalShell和MobaXterm

上傳檔案

如果你要上傳檔案,直接拉到目錄裡就行了,這和大多數終端工具的行為是類似的:

VSCode作為終端工具替代FinalShell和MobaXterm

無法登陸?

我今天在自己的NAS裡就遇到無法用VSCode登陸的情況。經過一翻調查,這通常是由於

系統裡沒有VSCode的下載源

所致的。我們按以下步驟進行解決:

透過root許可權將/etc/ssh/sshd_config檔案中的AllowTcpForwarding設定為yes。

重啟ssh服務:sudo service sshd restart

刪除舊的VSCode資料夾:rm -rf 。vscode-server/

安裝好VSCode源(以Debian系的Linux發行版為例):

# 下載必要軟體sudo apt-get install software-properties-common apt-transport-https curl# 下載微軟的asc檔案curl -sSL https://packages。microsoft。com/keys/microsoft。asc | sudo apt-key add -# 新增倉庫sudo add-apt-repository “deb [arch=amd64] https://packages。microsoft。com/repos/vscode stable main”# 更新軟體列表sudo apt update

最後,再重新透過本地的VSCode去連線此VPS或NAS,則可成功。

小結

設定其實也不難,就是安裝一個拓展。VSCode本身也是一個強大的工具,以後有機會再多多介紹吧!我先試用一段時間,之後會陸續反饋體驗效果!

參考

Remote SSH via Visual Studio Code

SSH to OMV5 via VSCode

Vscode源使用幫助

如何在Debian 10安裝vscode

相關文章

頂部