WingIDE 7.2.0 远程调试
大型程序常常会运行在性能强劲的服务器上,但是此时程序的调试又成了难办的事情,于是产生了远程调试的需求,本文介绍WingIDE远程调试配置方法。
环境描述
WingIDE 版本需求 6.++/ 7.++ ,我的是 7.2.0
本地操作系统 Win10
远程服务器操作系统 Ubuntu 16.04
安装 putty
解决方案:使用ssh协议通信,实现远程调试
环境配置
安装SSH服务
查看服务是否安装:
sudo ps -e |grep ssh
返回带有 sshd 的条目即为已经安装
$ ps -e |grep ssh37 ? 00:00:00 sshd
16013 ? 00:00:00 sshd
16588 ? 00:00:00 sshd
否则安装SSH服务
sudo apt-get install openssh-server
生成SSH密钥对
在本地Win10(运行wingIDE的环境)使用ssh-keygen生成SSH密钥
$ ssh-keygen -t rsa
此时在 C -> Users -> Admin(用户名) -> .ssh 文件夹下会生成
id_rsa
和id_rsa.pub
两个密钥文件,其中id_rsa
为私钥,无论如何不能交给别人。
远程主机配置SSH密钥
将刚刚生成的公钥文件
id_rsa.pub
复制到远程主机~/.ssh
文件夹中,并添加到~/.ssh/authorized_keys
里。假设你的
id_rsa.pub
文件在.ssh
文件夹中而且名称为rsa_temp.pub
cat ~/.ssh/rsa_temp.pub >> ~/.ssh/authorized_keys
rm ~/.ssh/rsa_temp.pub
此时你的本机Win10系统ssh连接远程主机已经不再需要输入密码进行身份验证。
可以使用ssh命令测试是否配置成功,过程中询问是否继续连接,输入
yes
即可:
ssh -p 3722 root@192.168.10.80 #-p为端口 一般来说ssh常用端口默认是22----->
The authenticity of host '[192.168.10.80]:3722 ([192.168.10.80]:3722)' can't be established.
ECDSA key fingerprint is SHA256:qCIsaqEa6wNy0daSgBxxxxxxxxxxxxxxxxxxxxxx.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '[192.168.10.80]:3722' (ECDSA) to the list of known hosts.
Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-142-generic x86_64)* Documentation: https://help.ubuntu.com* Management: https://landscape.canonical.com* Support: https://ubuntu.com/advantage
Last login: Thu May 14 08:20:47 2020 from 192.168.10.213* Starting OpenBSD Secure Shell server sshd [ OK ]
root@fc6fa7bb6824:~#
此时我们已经可以用SSH连接两个操作系统,即已经完成了理论层面的配置,接下来进入具体操作阶段。
远程调试配置
此处解释一下,WingIDE在连接远程服务器时需要配置连接信息,而这个信息可以在putty中保存,也就是说,只要putty中保存的参数可以连接成功,那么这套配置就可以用于wingIDE的远程调试。
私钥文件id_rsa转换成putty的ppk格式
putty需要ppk格式的私钥文件,生成方法如下:
- 运行puttygen (在putty同位置文件夹内)
- 选择
Conversions
菜单项中的Import key
选项:
- 选择生成的id_rsa文件
- 在puttygen的界面上点击
Save private key
按钮就可以把私钥转换为ppk的格式了(不要点Generate
)
在putty配置远程连接信息
打开putty
- 配置 Session :
主要配置IP和端口号,在Saved Sessions里配置可以区分的名字,之后供WingIDE调用
- 配置 Connection-Data选项卡,在自动登录用户名处填入需要自动登录的用户名(我的是root)
- 配置 Connection-SSH-Auth选项卡,浏览选择刚刚生成的私钥ppk文件:
- 回到Session,点击
Save
保存当前配置到test_3722
中:
- 此后每次打开putty双击我们的
test_3722
即可连接到远程服务器:
配置WingIDE
距离成功仅一步之遥。
打开WingIDE, Project -> New Project
其中 Identifier 为该工程的名称, Host Name为我们刚刚保存的Putty名称,点击
OK
。
- 此时可以选择保存工程,也可以一会再说
- 在远程的默认python路径往往不是我们需要的,我的常用python在conda的一个自建的环境中,可以指定其为wingIDE的默认远程python环境:
- 随后一路OK,出现此对话框说明配置成功:
- 重启python shell 可以在本地看到远程的python shell:
- 可以简单通过操作系统验证是否配置成远程python
- 在project中可以加入远程的工程
可以本地修改远程代码,并运行调试:
WingIDE 7.2.0 远程调试相关推荐
- UWA Pipeline 2.0 功能详解|私有云真机远程调试
UWA Pipeline 是一款面向游戏开发团队的本地协作平台,旨在为游戏开发团队搭建专属的DevOps研发交付流水线. 为帮助大家更好了解最新2.0版本中的各项新功能,我们将陆续为大家进行详解. 今 ...
- mac下IDEA远程调试hive-2.2.0
文章目录 1.首先刚刚下载的源代码,要先编译 2.远程调试 3.添加Remote 3.debug 1.首先刚刚下载的源代码,要先编译 mac下hive-2.2.0-src版本的编译 2.远程调试 使用 ...
- pycharm配置远程调试docker
20210923 pycharm 运行远程解释器 20210915 远程调试确认配置 第一步如果事先没有配置ssh,可以选下面新建ssh 还有另一种调试方法:使用pycharm-debug包调试 详情 ...
- pycharm连接远程服务器并进行代码上传+远程调试
Pycharm连接远程服务器并进行代码上传+远程调试 </h1><div class="clear"></div><div class=& ...
- NetBeans配置Xdebug 远程调试PHP
很多PHP程序员使用echo,dump等比较原始的方法调试,这是非常落后的. 几年前本人写过一篇: NetBeans配置Xdebug 由于那篇文档还需要引用本人写的其他文档,感觉有些分散,所以这里重新 ...
- 【GDB】gdbserver的使用,远程调试开发板
0.将gdbserver拷贝到目标板子上 注:gdbserver在交叉编译工具目录/debug-root/usr/bin下 可用file命令查看 --------------------------- ...
- ECLIPSE远程调试出现如下问题 ECLIPSE中调试代码提示找不到源
ECLIPSE远程调试出现如下问题 ECLIPSE中调试代码提示找不到源 如此提示是由于没有JAR包中找不到MAIN,可以手动添加或自己修改 利用ECLIPSE填写JAR中的MAIN方法后,就可以调 ...
- Java Remote Debug(远程调试)
Java Remote Debug(远程调试) 作者: ytfei 日期: 2011 年 05 月 08 日 发表评论 (0) 查看评论 新接手的项目采用的是Maven作为编译管理工具,项目内容则是按 ...
- [转载]eclipse的远程调试功能配置
原文地址:eclipse的远程调试功能配置作者:我的 用途:web应用部署并运行于外部(区别于eclipse环境中启动的)应用服务器中,当出现问题时,可以使用eclipse工程的源代码进行跟踪调试. ...
- Visual Studio 2012/2010/2008 远程调试
远程调试应用场景 部署环境:ASP.NET(C#)+IIS+Win7 64 bit 很多公司的开发模式都是将开发机器和服务器分开,也就是开发一台机,服务器一台机.而测试人员会在服务器上录入测试数据,此 ...
最新文章
- 电力职称计算机多选,【2017年整理】职称计算机考试Office多选模拟题及答案.doc...
- mod_pagespeed
- 推荐系统中的长尾物品(Tail Items)推荐问题
- Boost:宏BOOST_TEST_GT的使用实例
- scala中NULL的option定义的字段初始化用Some
- PyInstaller 生成exe文件
- 运行 Java、Python、Go 等 25 种代码后,发现性能最强的竟然是它!
- ajax的content-download时间过慢问题的解决与思考
- Vue-Access-Control:前端用户权限控制解决方案
- 线性方程组的求解(C++)
- python-jieba库
- mysql rpm mar_Centos7.3离线(rpm方式)安装mysql服务
- 使用Python,SMTP发邮件到qq邮箱(文本/超链接/图片/表格/附件表格)
- mbp touchbar设置_macbookpro touchbar 怎么添加锁屏快捷键
- PHP数字球,球体的计算
- Gas Station (环形加油站)
- 已有企业认证的微信公众号快速创建一个企业小程序
- java中finally语句是否一定会被执行
- 洛谷P1605 迷宫(dfs) 题解
- Xtensa DSP结构学习
热门文章
- 外贸工具WhatsApp
- Linux 常见问题
- 计算机二级word 文档排版,word排版操作指导(计算机二级2010版)
- Python调用百度API实现语音识别
- OTA三种差分算法安装使用。bsdiff,hdiffpatch,xdelta3
- 晶振旁的电阻(并联与串联)和电容的作用
- Codeforces1221 C. Perfect Team
- css and HTMLpicture knowledge
- to_param()函数和parameterize()函数
- 英语3500词(一)university life主题(2022.1.13)