Ubuntu环境下Python远程调试的详细配置方法及实战技巧
Python在Ubuntu上的远程调试主要有三种方案:VSCode的RemoteDevelopment扩展包通过SSH直连实现本地编写远程调试;PyCharmProfessional版借助DebugServer与pydevd_pycharm库建立连接;轻量级工具rpdb基于pdb实现远程调试。需注意端口安全、环境一致性与端口冲突问题。
在Ubuntu服务器上进行Python代码远程调试,是许多开发者面临的常见需求。虽然网上教程众多,但真正实用且能覆盖不同场景的解决方案,其实主要集中在几套成熟方案上。本文将从IDE集成调试到轻量级工具,逐一详细解析,帮助您快速掌握远程调试技巧。
Python在Ubuntu上的远程调试方法
1. 使用VS Code的Remote Development扩展包实现远程调试(推荐)
在远程调试领域,VS Code的Remote Development扩展包堪称一把利器。它通过SSH直连远程Ubuntu服务器,让您可以在本地编写和修改代码,而调试器则在远程服务器上运行,体验几乎与本地开发无异。具体操作步骤如下:

- 首先安装扩展。在VS Code扩展商店中搜索“Remote – SSH”并安装(前提是本地已安装VS Code)。
- 配置SSH连接。按下
Ctrl+Shift+P打开命令面板,输入“Remote-SSH: Connect to Host…”,然后输入远程服务器的SSH地址,如user@remote_host。连接成功后,VS Code会自动在远程服务器上安装必要的组件,整个过程无需手动干预。 - 配置调试器。在VS Code中创建
launch.json文件——点击左侧“Run and Debug”图标,再点击齿轮图标。添加以下配置(请根据实际情况替换remote_host和路径):{"version": "0.2.0","configurations": [{"name": "Python: Remote Attach","type": "python","request": "attach","connect": {"host": "remote_host",// 远程服务器IP或域名"port": 5678 // 调试端口(需与远程一致)},"pathMappings": [{"localRoot": "${workspaceFolder}",// 本地项目路径"remoteRoot": "/path/to/your/project"// 远程项目路径}]}]} - 启动远程调试。在远程Ubuntu服务器上执行脚本时,添加调试参数:
然后返回VS Code,点击“开始调试”按钮,即可看到断点、单步执行、变量监视等功能正常运行。python -m debugpy --listen 0.0.0.0:5678 /path/to/your/script.py
2. 使用PyCharm Professional Edition进行远程调试
如果您是PyCharm的忠实用户,其专业版(Professional Edition)自带的远程调试功能同样非常成熟。核心思路是在本地启动一个Debug Server,远程脚本通过pydevd_pycharm库连接回本地。具体操作步骤如下:
- 安装
pydevd-pycharm库。在远程Ubuntu服务器上,使用pip安装与本地PyCharm版本匹配的库,例如pip install pydevd-pycharm==221.5921.27(具体版本号请根据本地PyCharm版本确定)。 - 配置PyCharm Debug Server。打开PyCharm,点击“Edit Configurations”→“+”→“Python Debug Server”,填写以下信息:
- Name:任意名称,例如“Ubuntu Debug”;
- IDE host name:本地机器的IP地址,如
192.168.1.100; - Port:调试端口号,如
2233。
- 修改远程代码。在需要调试的Python脚本中,添加以下代码(确保IP和端口与上述配置一致):
import pydevd_pycharmpydevd_pycharm.settrace('192.168.1.100', port=2233, stdoutToServer=True, stderrToServer=True) - 启动调试。首先在PyCharm中点击“Debug Ubuntu Debug”按钮,启动调试服务。然后在远程服务器上运行脚本(
python3 script.py),PyCharm将自动连接并进入调试模式,断点、变量监控等功能均可正常使用。
3. 使用rpdb远程调试库实现轻量级远程调试
如果您不想配置复杂的IDE,仅需偶尔快速定位问题,那么rpdb是一个绝佳选择。它基于Python内置的pdb调试器,但扩展为远程模式,只需几行代码即可实现远程调试。
- 安装rpdb。需要在本地和远程服务器上都安装,执行
pip install rpdb。 - 插入断点。在需要调试的脚本中,添加以下代码(指定监听地址和端口):
import rpdbrpdb.set_trace(address=('0.0.0.0', 4444))# 监听所有IP的4444端口 - 连接调试。在本地机器上,使用telnet或nc工具连接远程服务器的端口:
连接成功后,就可以使用pdb的命令了——telnet remote_host 4444# 或 nc remote_host 4444c继续执行、n单步执行、p 变量名打印变量值,与本地调试体验完全一致。
注意事项
- 安全性:远程调试需要开放端口,建议使用SSH隧道加密通信(例如VS Code的Remote - SSH扩展默认使用SSH加密)。此外,避免使用弱密码,推荐使用SSH密钥登录。
- 环境一致性:确保本地和远程服务器的Python版本以及依赖库一致。推荐使用
requirements.txt或虚拟环境(如venv、conda)来同步环境,避免调试时出现意外错误。 - 端口冲突:调试端口(如5678、2233、4444)需确保未被占用,可以使用
netstat -tulnp | grep 端口号命令进行检查。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
FileZilla断点续传设置与操作指南
FileZilla支持断点续传,需客户端与服务器均开启REST命令。设置中确保启用断点续传及继续传输选项。中断后自动或手动从断点恢复。注意服务器支持、传输模式匹配及文件完整性校验。
Debian系统C++编译器位置查找方法
在Debian系统中,通过apt安装的C++编译器g++默认位于 usr bin g++,可使用which或whereis命令验证路径。g++属于build-essential软件包,若未安装则需执行sudoaptinstallbuild-essential。该包还包含gcc、make等编译工具链,g++是GNUC++编译器,实际是符号链接指向具体版本,验证
Debian系统安装C++环境的方法
在Debian系统安装C++开发环境:先sudoaptupdate更新包列表,再sudoaptinstallbuild-essential安装编译工具链,或单独安装g++。用g++--version验证。可选安装VSCode、GDB、CMake等工具并配置默认编译器版本。
Debian系统C++开发环境配置指南
在Debian系统中,先执行aptupdate更新软件包列表,再安装build-essential元包即可获得GCC、G++、Make和GDB。通过运行g++--version命令验证编译器安装成功。可选安装VisualStudioCode、CLion等编辑器及CMake构建工具,并编写一个简单的HelloWorld程序,使用g++编译运行以验证环境配置正确
通过cpustat工具查看CPU状态的具体方法与详细步骤
cpustat是sysstat包中的CPU监控工具,可按固定间隔输出带时间戳的CPU使用率统计。安装后运行cpustat即可实时显示各核心信息,常用指标包括%usr、%sys、%iowait、%steal和%idle,用于定位用户态、内核态或I O瓶颈。高级选项-c可显示单核统计,-m可同时查看内存使用,适合脚本采集和性能分析。
- 热门数据榜
相关攻略
2026-07-25 21:12
2026-07-25 21:11
2026-07-25 21:11
2026-07-25 21:11
2026-07-25 21:11
2026-07-25 21:03
2026-07-25 21:03
2026-07-25 21:03
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程

