大型程序常常会运行在性能强劲的服务器上,但是此时程序的调试又成了难办的事情,于是产生了远程调试的需求,本文介绍WingIDE远程调试配置方法。
环境描述 {#环境描述}
-
WingIDE 版本需求 6.++/ 7.++ ,我的是 7.2.0
-
本地操作系统 Win10
-
远程服务器操作系统 Ubuntu 16.04
-
安装 putty
-
解决方案:使用ssh协议通信,实现远程调试
环境配置 {#环境配置}
安装SSH服务 {#安装SSH服务}
查看服务是否安装: 返回带有 sshd 的条目即为已经安装 否则安装SSH服务
生成SSH密钥对 {#生成SSH密钥对}
在本地Win10(运行wingIDE的环境)使用ssh-keygen生成SSH密钥 此时在 C -> Users -> Admin(用户名) -> .ssh 文件夹下会生成
id_rsa
和id_rsa.pub
两个密钥文件,其中id_rsa
为私钥,无论如何不能交给别人。
远程主机配置SSH密钥 {#远程主机配置SSH密钥}
将刚刚生成的公钥文件
id_rsa.pub
复制到远程主机~/.ssh
文件夹中,并添加到~/.ssh/authorized_keys
里。假设你的
id_rsa.pub
文件在.ssh
文件夹中而且名称为rsa_temp.pub
此时你的本机Win10系统ssh连接远程主机已经不再需要输入密码进行身份验证。可以使用ssh命令测试是否配置成功,过程中询问是否继续连接,输入
yes
即可: 此时我们已经可以用SSH连接两个操作系统,即已经完成了理论层面的配置,接下来进入具体操作阶段。
远程调试配置 {#远程调试配置}
此处解释一下,WingIDE在连接远程服务器时需要配置连接信息,而这个信息可以在putty中保存,也就是说,只要putty中保存的参数可以连接成功,那么这套配置就可以用于wingIDE的远程调试。
私钥文件id_rsa转换成putty的ppk格式 {#私钥文件id-rsa转换成putty的ppk格式}
putty需要ppk格式的私钥文件,生成方法如下:
- 运行puttygen (在putty同位置文件夹内)
- 选择
Conversions
菜单项中的Import key
选项:
- 选择生成的id_rsa文件
- 在puttygen的界面上点击
Save private key
按钮就可以把私钥转换为ppk的格式了(不要点Generate
)
在putty配置远程连接信息 {#在putty配置远程连接信息}
打开putty
- 配置 Session :
主要配置IP和端口号,在Saved Sessions里配置可以区分的名字,之后供WingIDE调用
- 配置 Connection-Data选项卡,在自动登录用户名处填入需要自动登录的用户名(我的是root)
- 配置 Connection-SSH-Auth选项卡,浏览选择刚刚生成的私钥ppk文件:
- 回到Session,点击
Save
保存当前配置到test_3722
中:
- 此后每次打开putty双击我们的
test_3722
即可连接到远程服务器:
配置WingIDE {#配置WingIDE}
距离成功仅一步之遥。
打开WingIDE, Project -> New Project
其中 Identifier 为该工程的名称, Host Name为我们刚刚保存的Putty名称,点击
OK
。
- 此时可以选择保存工程,也可以一会再说
- 在远程的默认python路径往往不是我们需要的,我的常用python在conda的一个自建的环境中,可以指定其为wingIDE的默认远程python环境:
- 随后一路OK,出现此对话框说明配置成功:
- 重启python shell 可以在本地看到远程的python shell:
- 可以简单通过操作系统验证是否配置成远程python
- 在project中可以加入远程的工程
可以本地修改远程代码,并运行调试:
文章链接:
https://www.zywvvd.com/notes/environment/wing-ide/wing-ssh-remote/wing-ssh-remote/