轉(zhuǎn)自我的個人博客https://blognas.hwb0307.com。歡迎關(guān)注聋丝!
前言
不知小伙伴們都用過哪些終端工具吁峻?我有用過XShell氏涩、FinalShell和MobaXterm,其實都各有各的特點,特別是MobaXterm吠谢,我覺得是比較完美的終端工具晦嵌。不過,今天和小伙伴們討論的時候荸实,發(fā)現(xiàn)VSCode也可以作為一個終端工具:
所以有點按捺不住那顆想要折騰的心了匀们!
而且,我們可以直接利用VSCode本地編輯器對遠(yuǎn)程文件進行預(yù)覽和編輯准给,這是使用VSCode作為終端工具的最大賣點之一吧:
你甚至可以用來預(yù)覽圖片泄朴!一般的終端工具應(yīng)該是做不到的重抖。
我平時使用Python的時候就會使用VSCode;VSCode本身也是一個比較流行的IDE祖灰。我個人喜歡VSCode的主要原因是因為它兼容性比較好钟沛,插件功能強大,顏值高局扶,比較適合我這種編程小白恨统。初步體驗了一下它的SSH功能,效果不錯详民!如果你本來就在使用VSCode延欠,它也可以作為一個終端工具喔!你也不用糾結(jié)要用Final Shell還是MobaXterm了沈跨!
這一期我們不講怎么安裝VSCode由捎,大家可以在官網(wǎng)下載并安裝即可:VSCode下載。對于Windows系統(tǒng)的用戶來說饿凛,和安裝一般的.exe
軟件沒有太大的區(qū)別狞玛。我主要講(shui)一下怎么將VSCode打造成一個遠(yuǎn)程訪問VPS的終端工具。
安裝Remote-SSH擴展
首先涧窒,我們要在本地VSCode客戶端上安裝一個VSCode的擴展心肪,叫Remote - SSH
。它的主要作用就是提供ssh訪問的基本功能:
成功安裝后纠吴,左側(cè)欄中會出現(xiàn)一個電腦顯示器的圖標(biāo)硬鞍。依下圖所示打開config文件(對Windows用戶來說,路徑一般是C:\Users\Administrator\.ssh\config
)戴已,進行相關(guān)的設(shè)置:
內(nèi)容類似于:
Host 主機1
HostName 192.168.1.151
User user1
Port 22
Host 主機2
HostName 192.168.1.152
User user3
Port 1452
Host 主機3
HostName 192.168.1.153
User user3
Port 3355
以主機1
為例固该,參數(shù)解釋如下:
- Host:主機的名字。隨便取糖儡,只為了自己識別方便伐坏。
- HostName:通常是一個ip地址,可以是公網(wǎng)ip握联;如果是訪問局域網(wǎng)機器桦沉,就寫一個局域網(wǎng)ip。
- User:用戶名
- Port:ssh端口金闽。默認(rèn)是22纯露;如果你的VPS自定義了ssh端口,比如1234代芜,就使用1234埠褪。
加幾臺主機就會顯示幾臺主機,沒有數(shù)量限制。注意组橄,不需要填寫密碼。
在VPS上添加本地公鑰
不太推薦登陸時使用密碼罚随,直接讓遠(yuǎn)程的VPS信任本地主機就好玉工。一般來說,如果你的電腦里用過ssh服務(wù)的話淘菩,.ssh
文件夾里都會有這兩個文件:
id_rsa
id_rsa.pub
如果沒有這兩個文件遵班,對Windows用戶而言,可以用管理員權(quán)限打開cmd或者Power Shell潮改,輸入ssh-keygen
狭郑,按提示操作即可生成這兩個文件。id_rsa
是私鑰汇在,只能保存在本地電腦翰萨,不可讓其它人知道;id_rsa.pub
是公鑰糕殉,保存在遠(yuǎn)程VPS中亩鬼,讓其它人知道也無所謂(一般也只是自己知道啦)。
這時阿蝶,如果你想要通過訪問某VPS中的某個用戶雳锋,要先利用該用戶的身份登陸VPS,進入用戶的home目錄羡洁,然后將id_rsa.pub
的內(nèi)容添加到該用戶的.ssh
文件夾里的authorized_keys
文件里玷过,類似于:
這樣,遠(yuǎn)程VPS就會信任我們的本地電腦筑煮,訪問的時候就不需要密碼了辛蚊。
如果這個用戶沒有.ssh
和authorized_keys
這兩個文件(如果從來沒設(shè)置過,一般是沒有的)咆瘟,可以手動創(chuàng)建嚼隘,然后運行命令sudo service sshd restart
重啟ssh服務(wù)生效。
讓VPS信任我們的本地電腦后袒餐,我們直接右鍵某條SSH記錄飞蛹,直接點擊Open on SSH Host in Current Window
(在本窗口訪問)或者Open on SSH Host in New Window
(在新窗口訪問):
即可正常訪問。登陸成功后灸眼,左下角會出現(xiàn)SSH:主機1
之類的字樣卧檐。
第一次連接時,由于需要在VPS端安裝vscode sever
焰宣,所以時間會略長霉囚。之后登陸速度就會蠻快的了。
打開Shell
默認(rèn)情況下匕积,按Ctrl+j
就可以調(diào)出Shell盈罐,再按一次Ctrl+j
就會隱藏Shell榜跌。按右邊的^
圖案可以向上填充Shell。這個是VScode的常規(guī)操作盅粪,與Remote SSH并無直接關(guān)聯(lián)钓葫。
選擇目錄
有時候,我們想進入某個目錄對某個文件進行編輯票顾。默認(rèn)情況下础浮,你可以按Ctrl+k+o
就可以調(diào)出目錄選擇;按Esc
就可以退出選擇奠骄。通常豆同,你可以選擇一個高級目錄,比如根目錄/
含鳞,這樣就不需要頻繁地切換目錄影锈。VSCode每次切換這個工作目錄都要重新連接一次。
當(dāng)然蝉绷,你編輯文件的時候精居,權(quán)限來自之前authorized_keys
所對應(yīng)的用戶的權(quán)限。比如你登陸的是一個普通用戶潜必,是沒有辦法直接讀寫或執(zhí)行root用戶的文件的(除非root給予你相應(yīng)的權(quán)限)靴姿。
上傳文件
如果你要上傳文件,直接拉到目錄里就行了磁滚,這和大多數(shù)終端工具的行為是類似的:
無法登陸佛吓?
我今天在自己的NAS里就遇到無法用VSCode登陸的情況。經(jīng)過一翻調(diào)查垂攘,這通常是由于系統(tǒng)里沒有VSCode的下載源所致的维雇。我們按以下步驟進行解決:
-
通過root權(quán)限將
/etc/ssh/sshd_config
文件中的AllowTcpForwarding
設(shè)定為yes。 -
重啟ssh服務(wù):
sudo service sshd restart
-
刪除舊的VSCode文件夾:
rm -rf .vscode-server/
-
安裝好VSCode源(以Debian系的Linux發(fā)行版為例):
# 下載必要軟件
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吱型,則可成功。
小結(jié)
設(shè)置其實也不難陨仅,就是安裝一個拓展津滞。VSCode本身也是一個強大的工具,以后有機會再多多介紹吧灼伤!我先試用一段時間触徐,之后會陸續(xù)反饋體驗效果!
參考
本文使用 文章同步助手 同步