
本文转载自微信公众号「编码小二」,作家小二 。转载本文请相关编码小二公众号。
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 方式联络到汉典办事器,小二再共享一种更浮浅的步调:
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 相关问题作念了补充完善,相对具有参考意旨;
