发布日期:2024-08-03 16:47 点击次数:123
本文转载自微信公众号「编码小二」【MXSPS-366】会員限定緊縛(秘)倶楽部 4,作家小二 。转载本文请干系编码小二公众号。
1 序论最近在搭建一套 VSCode 的远端设备环境,主要念念治理 C/C++ 代码不成 100% 跳转的问题。
闲言少叙,装配历程送上。
2 操作要害2.1 装配 SSH
金发大奶由于咱们是使用 SSH 一语气长途干事器,因此 Windows 需要守旧 SSH 。
不错通过装配 Git 来获得 SSH 功能,若何考证?使用 Win + R ,输入 cmd 开放物化窗口,径直输入 ssh ,如下教唆,则代表 SSH 还是装配生效;
2.2 添加插件
使用 VSCode 最浅陋的少量,便是有好多插件可供选拔。
本次咱们需要使用 Remote - SSH 插件,长这个表情,不要搞错了
装配完插件后,在侧边栏不错看到 “长途资源治理器” 图标。
2.3 树立SSH密钥
主义:将本机添加到长途干事器一语气白名单,让干事器知说念是已认证的电脑在一语气。历程近似于 GitHub 网站添加腹地电脑的 SSH 公钥。
1、使用如下号令,生成 SSH 公钥文献。如果还是生成,则可径直使用,跳到要害二。
# 门径一 ssh-keygen # 门径二,参考使用Git生成密钥 ssh-keygen -t rsa -C "youremail@example.com"
2、一般生成的密钥文献,旅途为:C:\Users\user\.ssh ,找到公钥文献 id_rsa.pub ,复制到长途干事器 根目次 的 .ssh 文献夹中。
(1)根目次,不一定非淌若 /.ssh 旅途,不错是我方的用户目次,近似这么:/zhaochen/.ssh。
(2).ssh 文献夹莫得何如办?新建一个文献夹,定名为 .ssh 即可。同期要阐明长途干事器是否守旧 SSH ,如果此时恰是通过 SSH 样式一语气的,那细目是守旧了。
3、生成 authorized_keys 文献。这么后续在使用 Remote 插件时,不需要密码,就不错径直登录到干事器。
(1)一语气到长途干事器
门径一:通过 Windows 的 cmd 号令框,使用如下号令 + 密码,一语气到长途干事器# 表率号令,输入后会教唆输入密码 ssh username@ip -p port # 示例,注:SSH默许为22端口 ssh zhaochen@192.168.1.1 -p 22门径二:还是使用 SSH 样式一语气到干事器
(2)参加 .ssh 目次,使用如下号令,生成 authorized_keys 文献。
cat id_rsa.pub > authorized_keys
4、在 cmd 窗口,再次尝试如下,不错看到无需密码,径直连上干事器
如果已使用 SSH 样式一语气到长途干事器【MXSPS-366】会員限定緊縛(秘)倶楽部 4,小二再共享一种更疏漏的门径:
1、在 .ssh 文献夹下,新建 authorized_keys 文献;
2、将 id_rsa.pub 文献中的实践一齐复制到 authorized_keys 文献即可;
2.4 添加树立文献
主义:树立 VSCode 一语气长途干事器的一些基本信息。
1、点击左侧的 “长途资源治理器” 图标,点击右上角的小齿轮(建设)
2、在弹出来的窗口中,选拔第一个 config 文献开放,参考下图,填写对应信息
(1)参考上述树立,释义如下
Host <长途主机称呼> HostName <长途主机IP> User <用户名> Port <ssh端口,默许22> IdentityFile <本机SSH私钥旅途> ForwardAgent yes <VSCode 我方添加的,无须管>Host :一语气的主机称呼,可自界说; Hostname :长途主机的 IP 地址; User :用于登录长途主机的用户名; Port :用于登录长途主机的端口,SSH 默许为 22 ; IdentityFile :腹地的私钥文献 id_rsa 旅途;
(2)如果需要一语气多个长途干事器,可参考如上实践,树立多个即可;
Host <长途主机称呼1> HostName <长途主机1 IP> User <用户名1> Port <ssh端口,默许22> IdentityFile <本机SSH私钥旅途> ForwardAgent yes <VSCode 我方添加的,无须管> Host <长途主机称呼2> HostName <长途主机2 IP> User <用户名2> Port <ssh端口,默许22> IdentityFile <本机SSH私钥旅途> ForwardAgent yes <VSCode 我方添加的,无须管>
2.5 一语气测试
1、参加 “长途资源治理器” 选项,右键点击主机名;
2、选拔一种样式,一语气到长途干事器,进行测试;
3、如果一语气生效,左下角则会显现现时已一语气的主机名。
参考良友
1、VS Code Remote SSH树立 - 知乎 (zhihu.com)(https://zhuanlan.zhihu.com/p/68577071)
3 问题汇总3.1 插件装配
当咱们搭建好 Remote SSH 环境后,VSCode 守旧在 长途干事器 装配插件。
此时就不错左证我方的设备习尚,将插件装配到不同处所了。
3.2 一语气报错
如果空幻教唆如下:
could not establish connection to “XXX“.Connecting was canceled. VScode remote '_workbench.downloadResource' failed vscode could not establish _workbench.downloadResource
可径直参考这篇著述:VSCode Remote 报错,无法一语气??
3.3 膨胀ssh一语气失败
SSH 一语气长途干事器失败,有如下空幻教唆:
could not establish connection to XXX, the path argument must be of type string, received type undefined。
问题原因:找不到 SSH 可扩充表率。
治理门径如下:
1、按下 F1 ,输入 Remote-SSH: Settings ,找到 remote.SSH.path ,修改此旅途为腹地 Git 装配表率中的 ssh.exe 文献即可;
2、参考下图:
参考良友
1、Visual studio code 膨胀 ssh 一语气失败:The "path" argument must be of type string. Received type undefined_的米-漠石's Blog-CSDN博客(https://blog.csdn.net/mostone/article/details/103023476)
3.4 C/C++环境空幻
1、空幻截图如下:
2、空幻日记如下:
正在更新 C/C++ 依赖项...正鄙人载表率包“C/C++ language components (Linux / x86_64)” 失败。正在重试... 失败。正在重试... 失败。正在重试...正在恭候 8 秒... 失败。正在重试...正在恭候 16 秒... 未能下载 https://go.microsoft.com/fwlink/?linkid=2164295在阶段 downloadPackages 失败Error: connect ECONNREFUSED 23.41.74.108:443at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1146:16)如果在脱机环境中责任或反复看到此空幻,请尝试从 https://github.com/microsoft/vscode-cpptools/releases 下载预包含了通盘依赖项的膨胀版块,然后使用 VS Code 中的“从 VSIX 装配”号令来装配它。
3、问题原因:小二估计,是由于长途干事器脱机使用插件,导致 C/C++ 的膨胀装配失败;
4、治理门径,空幻日记中还是相比把稳。简要描绘如下:
(1)手动下载 cpptools-linux.vsix 文献,放到长途干事器中;网址:Releases · microsoft/vscode-cpptools (github.com)
(2)参加插件选项卡,点击 ··· ,选拔 从 VSIX 装配... ,选中刚刚下载的文献;
(3)临了恭候装配收场,点击重载窗口,就大功奏凯了。
参考良友
1、vscode 治理正鄙人载表率包“C/C++ language components (Linux / x86_64)” 失败引起的美艳找不到问题_chenwr2018的博客-CSDN博客(https://blog.csdn.net/chenwr2018/article/details/115774007)
2、Releases · microsoft/vscode-cpptools (github.com)(https://github.com/microsoft/vscode-cpptools/releases)
4 纪念1、把稳纪念 VSCode 搭建长途设备环境的历程;
2、对插件的装配、Remote SSH 有关问题作念了补充完善【MXSPS-366】会員限定緊縛(秘)倶楽部 4,相对具有参考真谛;