第 7 章
Conda环境与PyCharm调试
1. Conda 基础操作
Conda 是 Python 的环境管理工具,能在同一台服务器上维护多个互不干扰的 Python 环境。
实验室服务器上的 Conda 已经装好了,安装在 /opt/anaconda3/,登录后直接可用。我们可以创建两种 Conda 环境,一种是共享环境(通常默认创建这种就好),会存放在 /opt/anaconda3/envs/ 共享目录下;另一种是私有环境,存放在自己的家目录 ~/.conda/envs/ 下,只有自己能用。
查看已有环境
conda env list
以这台服务器(5070Ti-002)为例,可以看到已经安装了很多的conda环境。

创建新环境
conda create -n myenv python=3.10
-n myenv 是环境名,你自己取一个能区分项目的名字。python=3.10 指定 Python 版本。

按 y 并回车,等待安装完成。

上面是网络正常的情况,如果像下面这样出现 SSLError,通常是因为没连上校园网。在命令行中输入 google-chrome 并回车就可以打开 google 浏览器,然后访问 172.30.1.1,应该会跳转到校园网认证,把校园网连上就好。

安装完初步环境后,可以通过 pip 安装 pytorch、numpy、opencv-python 等其它包,通常代码仓库中都会有相应的环境搭建指引。再敲 conda env list,可以看到刚才安装的 myenv 环境出现了。

激活 / 退出环境
conda activate myenv # 激活
conda deactivate # 退出,回到 base

激活后终端前面会出现 (mytracker),说明你现在在这个环境里。后续的 pip install 只会影响当前激活的环境。例如安装一个numpy。

如果像这样安装非常慢,配一下国内镜像源,例如清华源。
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
快多了!装完之后再敲 pip list,果然安装好了。

安装 PyTorch
装 Pytorch 通常是搭环境最关键的一步。去 PyTorch 官网 选对应的 CUDA 版本,复制安装命令。例如:
# 先确认服务器的 CUDA 版本
nvidia-smi
# 示例:CUDA 12.8 对应的安装命令
# 2024 年之前 Conda 环境中的 Pytorch 还是用 conda 命令来安装的,现在基本上都统一用 pip 了!
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu128

可以看到本机的版本非常新,CUDA 13.2。通常选一个代码仓库推荐版本与本机环境兼容版本折中的一个 PyTorch 版本就好,但开始写代码跑实验之后要锁环境,避免 Pytorch / CUDA 版本变动造成性能波动。
装完验证一下,输出 True 就说明 PyTorch装好了,GPU 可用。
python -c "import torch; print(torch.cuda.is_available())"
2. PyCharm 安装与启动
调代码有两种方式:一种是在代码里加 print() 打印变量,另一种是用 PyCharm 打断点单步调试。print 能解决简单问题,但当你需要观察一个循环里每一步的张量变化、或者搞清楚一个函数的调用链时,断点调试效率高得多。
安装 PyCharm
服务器上可能有已经装好的 Pycharm,可以在 /data/ruanjian 找找,当然也可以重新给自己装一个。
以5070Ti-002为例,下面展示在家目录给自己装一个新的 PyCharm。
第一步:下载安装包
从 PyCharm 官网 下载 linux 版本(以 tar.gz 结尾),再传到服务器上,或者直接在服务器上用 wget 下载:
cd ~ # 回到家目录
wget https://download.jetbrains.com/python/pycharm-2026.2.1.tar.gz

第二步:解压
tar -xzvf pycharm-2026.2.1.tar.gz
解压后得到 pycharm-2026.2.1/ 文件夹,可以直接使用,可运行程序在其中的 bin/pycharm。

把安装包顺手清了也可以。
rm pycharm-2026.2.1.tar.gz
第三步:启动试一下。
~/pycharm-2026.2.1/bin/pycharm >/dev/null 2>&1 &
首次启动会弹出用户协议和主题选择,一路点过去就行。看到欢迎界面说明安装成功。

在 MobaXterm 中使用 Macro 一键启动 Pycharm
PyCharm 是图形界面程序,需要通过 MobaXterm 的 X11 转发来显示窗口。每次手动敲命令太麻烦,可以设一个 Macro(宏)一键启动。
启动命令是:
~/pycharm-2026.2.1/bin/pycharm >/dev/null 2>&1 &
这条命令拆开看:
| 部分 | 含义 |
|---|---|
~/pycharm-2026.2.1/bin/pycharm | PyCharm 的启动脚本 |
>/dev/null | 把标准输出丢弃(不在终端刷日志) |
2>&1 | 把错误输出也一起丢弃 |
& | 放到后台运行(终端不会被占住) |
首先点击 Record new Macro 录制脚本:

在右边粘贴启动命令,回车,最后点停止录制脚本。自己设一个脚本名称,例如 Pycharm 5070Ti-002。
之后连上这台服务器,点一下就能弹出 PyCharm 窗口。

打开项目并选择正确的 Interpreter 解释器
PyCharm 启动后,选 Open,找到你的代码目录(比如 /data/code_lzq/dtrack/),打开即可。
首次打开会提示配置 Python Interpreter:
- 点右下角的 Python 版本 → Add New Interpreter → Add Local Interpreter
- 选择 Select Existing → Type: Conda
- 系统会自动解析
/opt/anaconda3/envs已有的 Conda 环境,选择正确的环境名称即可。

3. PyCharm 打断点调试
打断点
在你想暂停的那一行代码,点击行号左边的空白区域,会出现一个红色圆点——这就是断点。程序运行到这里会自动暂停。
以调试训练代码为例,入口方法应该是 lib/train/run_training.py:
/data/code_lzq/dtrack/lib/train/run_training.py --script ostrack_cascade --config dinov3l_384_lora_film_cascade --save_dir ./output
在 train_script 第55行,把行号点一下,可以看见红色的小圆点,断点就打好了。

启动调试
在右上角点击这里的三个点,Edit,可以进入运行配置界面,在这里配置运行入口和参数。


配置好之后就可以直接点运行按钮或调试按钮。
单步执行
现在程序顺利在刚才断点出停了下了,可以看到下方的调试面板。

有几个常用按钮:

| 按钮 | 快捷键 | 作用 |
|---|---|---|
| Step Over | F8 | 执行当前行,跳到下一行(不进入函数内部) |
| Step Into | F7 | 进入当前行调用的函数内部 |
| Step Out | Shift+F8 | 从当前函数返回到调用处 |
| Resume | F9 | 继续运行,直到下一个断点 |
从左到右依次是:跳到下一个断点,下一行,下一步(任意代码),下一步(仅自己代码),查看断点。
暂停时,调试面板的 Variables 区域会显示当前作用域里所有变量的值,可以点进去查看。例如这里看到batch_size 是 8。

在Console界面,还可以直接在当前环境执行额外代码,也是一种重要的调试手段。
