VSCode远程开发调试服务器c/c++代码

 更新时间:2020年04月02日 14:24:41   作者:lucky_ricky  
语音相关的好多项目要在linux上跑,但代码开发大多是在PC机上,本篇简单介绍一下怎么在个人电脑上用VSCode远程开发调试服务器上的c/c++代码。感兴趣的朋友跟随小编一起看看吧

思路与上篇(PyCharm远程调试服务器python代码 )是一致的,所以端口转发这部分直接照抄上篇:

一、端口转发

对于没有公网IP的远程训练服务器,需要先配置端口转发,可以用ssh借道有办公网IP的办公机器。

0、公司给配置了一台Ubuntu系统的台式机器A,开发时想用Windows笔记本B,把远程CentOS训练服务器记为C。

1、首先需要修改台式机A上的ssh配置文件,如果不修改配置的话,将只有机器A可以访问训练服务器C。

$ sudo vim /etc/ssh/sshd_config

添加:

GatewayPorts yes
PasswordAuthentication yes

然后重启机器A的sshd服务使上述配置生效。

$ sudo systemctl restart sshd

2、在训练服务器C上向机器A主动建立SSH连接,转发训练服务器C的22号端口

3、用ssh命令转发端口,ssh -NTf -R 转发端口号:localhost:22 机器A的用户名@机器A的IP

$ ssh -NTf -R 2333:127.0.0.1:22 zhuangweiji@10.220.12*.25*

输入密码后就在后台运行了

4、验证,在机器B上

$ ssh zhuangweiji@10.220.12*.25*

登陆上的话就证明ssh隧道建立成功了

5、理论上,A和B可以是同一台机器,也就是C可以直接把端口转发给有pycharm的开发机器。不过由于我的开发机上下班会带着移动,移动过程中SSH不能保持连接,经常要重新配置IP,所以选择了用办公室的台式机中转。

二、免密登录

0、端口转发完成后,在windows机器B上,本地cmd窗口生成公钥和密钥(密钥默认放在C:\Users\用户名\.ssh下)

    ssh-keygen -t rsa -b 4096

1、把公钥添加到A机器的公钥集,法1:

将公钥id_rsa.pub复制到机器A的~/.ssh文件夹下,重命名为id_rsa_x260.pub(我的机器是x260),并将其追加到A机器的公钥集里

    cat id_rsa_x260.pub >> authorized_keys

2、把公钥添加到A机器的公钥集,法2:

    ssh-copy-id username@10.221.*.*

会自动把公钥append到A机器的$HOME/.ssh/authorized_keys里

三、安装 OpenSSH

0、Windows 10 机器 上需要安装 OpenSSH,管理员身份打开 PowerShell

    Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
    Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0 

四、远程开发调试

0、打开 VSCode,添加插件 Remote Development, 会自动安装 Remote-Container, Remote-SSH 及 Remote-WSL 全家桶,也可以只安装Remote-SSH。

1、安装好插件之后,右侧边栏选择remote explorer,下拉菜单栏选择SSH target,再点击configure小齿轮

2、选择c:\user\用户名\.ssh\config,添加如下信息

3、Hostname 填机器A的ip,port填转发的端口,填入用户名,由于已经在A机器上添加公钥,因此不需要密码。

保存后,ssh targets里面就会出现机器A,点击connect to host in new window之后,就可以直接在新窗口中访问机器C。

4、插件被分成了本地和远程两部分,本地插件不能在远程使用,需要重新安装

总结

到此这篇关于VSCode远程开发调试服务器c/c++代码的文章就介绍到这了,更多相关VSCode远程调试c/c++代码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C语言通讯录管理系统完整版

    C语言通讯录管理系统完整版

    这篇文章主要为大家详细介绍了C语言通讯录管理系统的完整版本,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • C++字符串类的封装你真的了解吗

    C++字符串类的封装你真的了解吗

    这篇文章主要为大家详细介绍了C++字符串类的封装,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02
  • 详解C++中十六进制字符串转数字(数值)

    详解C++中十六进制字符串转数字(数值)

    这篇文章主要介绍了详解C++中十六进制字符串转数字(数值)的相关资料,这里提供两种实现方法,需要的朋友可以参考下
    2017-08-08
  • C++设计模式编程中的迭代器模式应用解析

    C++设计模式编程中的迭代器模式应用解析

    这篇文章主要介绍了C++设计模式编程中的迭代器模式应用解析,迭代器模式注重对集合中元素的遍历而不使其暴露,需要的朋友可以参考下
    2016-03-03
  • C语言回溯法解八皇后问题(八皇后算法)

    C语言回溯法解八皇后问题(八皇后算法)

    这篇文章介绍了C语言回溯法解八皇后问题,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • C语言求幂计算的高效解法

    C语言求幂计算的高效解法

    这篇文章主要介绍了C语言求幂计算的高效解法,分别演示了求幂运算与整数次方的解法,具有不错的参考借鉴价值,需要的朋友可以参考下
    2014-09-09
  • C++ 实现带监视哨的顺序查找算法

    C++ 实现带监视哨的顺序查找算法

    这篇文章主要介绍了C++ 实现带监视哨的顺序查找算法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • C++类继承 继承后函数的值实现详解

    C++类继承 继承后函数的值实现详解

    这篇文章主要介绍了C++类继承 继承后函数的值实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • Visual Studio C++指针靠前靠后的问题全面解析

    Visual Studio C++指针靠前靠后的问题全面解析

    这篇文章主要介绍了Visual Studio C++指针靠前靠后的问题全面解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • C语言详细分析贪心策略中最小生成树的Prime算法设计与实现

    C语言详细分析贪心策略中最小生成树的Prime算法设计与实现

    最小生成树的问题还是比较热门的,最经典的莫过于Prime算法和Kruskal算法了,这篇博文我会详细讲解Prime算法的设计思想与具体代码的实现,不要求数据结构学的有多好,只要跟着我的思路来,一步一步的分析,调试,终能成就自己,那就让我们开始吧
    2022-05-05

最新评论