VSCode远程调试Debug

    科技2026-03-09  6

    本文尝试了在实验室的电脑上远程实验室的服务器来调试,

    以及在校外连上学校的VPN再远程学校服务器来调试

     

    一、我前几次用的教程是这个:

    https://www.bilibili.com/video/BV1f7411v7xG?from=search&seid=8681440500936089984

     

    在使用该教程时,如果linux端口不是默认的22,需要在这个文件 ssh-copy-id.ps1 里添加一个参数,

    在 param 里添加自己的 Linux 端口比如  $Linux主机端口 = '1111',

    然后在 $sftp连接参数 这一行 $Linux主机IP 后面加上  -PortNumber $Linux主机端口

     

    在最后的时候有一个报错:

    could not establish connection to Linux Connection was canceled

     

    这个其实不是问题,是因为没有点击 VScode 新的远程窗口上方侯选项里的 Linux:

    大概是这个位置有候选项,选Linux,

     

    https://github.com/microsoft/vscode-remote-release/issues/2788#issuecomment-641389166

     

    连接上后在Explorer里选remote的文件夹,服务器上的文件夹就都列出来

     

     

    二、在一的基础上的尝试

    当时就考虑到如果还有同学要用 VSCode 建立远程连接来调试,那我的配置会不会被顶掉

    确实出现了这个问题,有同学配置 ssh 时直接把我原来的配置顶掉了,所以我就连不上了

    “Could not establish connection to Linux”

     

    用 Xftp 连上服务器,打开 .ssh 文件夹,

    看着某位同学昨天传上来的公钥 id_rsa.pub 和私钥 id_rsa 以及 authorized_keys

    还好之前预料了,也有这个心理准备

    然后这里省略n次失败尝试...比如 Permission denied (publickey,password)

     

    于是我重新用 ssh-keygen 命令生成密钥对并命名为id_ab(公钥id_ab.pub, 私钥id_ab)

    然后把公钥 id_ab.pub 中的内容复制,找到服务器 .ssh 文件夹中某同学生成的 authorized_keys 文件并打开,

    可以看到第一行是他的公钥,然后把自己的公钥粘贴到第二行保存就行了。

    也可以用命令实现,先把自己的公钥传到服务器 .ssh 文件夹中,然后

    cat .ssh/id_ab.pub >> .ssh/authorized_keys

    这样也是把自己的公钥追加到authorized_keys文件中。

     

    然后还是一里面的VSCode的远程插件的设置,

    这里参考的知乎:https://zhuanlan.zhihu.com/p/68577071

    Host Linux HostName xxx.xx.xx.x Port xx User xx IdentityFile "C:\Users\xxxx\.ssh\id_ab"

    然后就可以了

     

     

    -----------------------------

    然后调试时,为了使用我项目下的虚拟环境,

    只需要在 View -> Command Palette.. (第一个)

    输入 Python: Select Interpreter (选择 python 解释器)

    选第一个 Enter interpreter path

     

    去找自己虚拟环境下的 python,

    比如我的就在 venv/bin/python3,

    选中后 VSCode 左下角蓝色的地方会显示 Python3.6.9 ('venv' : venv)

    这就使用了自己虚拟环境下的 python 啦

     

    ------------------------

    调试用VSCode,运行代码还是直接用Xshell,在VSCode里远程运行速度感觉慢

     

    Processed: 0.051, SQL: 9