概述

每次买了新的云服务器炼丹,都需要重新配置一遍环境。这里记录一下我个人完整的配置流程,方便以后查阅,也分享给大家参考。


一、基础工具安装

首先将本地ssh公钥上传到服务器,确保后续可以免密登录(这里也可以使用SCP命令上传,但是麻烦一点):

如果已经使用服务器厂商提供的密钥绑定服务,这一步可以省略。

注意需要根据实际情况替换占位符 <服务器用户名><服务器主机名或IP><SSH端口>

# windows PowerShell
 # 1)先按实际情况替换下面占位符
  # <服务器用户名> 例如 root / ubuntu / ec2-user
  # <服务器主机名或IP> 例如 connect.example.com / 1.2.3.4
  # <SSH端口> 例如 22 / 30016
  C:\Windows\System32\OpenSSH\scp.exe -P <SSH端口> $HOME\.ssh\id_rsa.pub <服务器用户名>@<服务器主机名或IP>:~/id_rsa_windows.pub
  # 2)登录服务器后执行以下命令将公钥添加到authorized_keys中
  mkdir -p ~/.ssh
  chmod 700 ~/.ssh
  cat ~/id_rsa_windows.pub >> ~/.ssh/authorized_keys
  chmod 600 ~/.ssh/authorized_keys
  rm -f ~/id_rsa_windows.pub


# Linux/MacOS
 # 1)先按实际情况替换下面占位符
  SERVER_USER="<服务器用户名>"
  SERVER_HOST="<服务器主机名或IP>"
  SERVER_PORT="<SSH端口>"
  PUB_KEY="${HOME}/.ssh/id_rsa.pub"  # 也可改成 id_ed25519.pub

  # 2)上传公钥到服务器临时文件
  scp -P "$SERVER_PORT" "$PUB_KEY" "${SERVER_USER}@${SERVER_HOST}:~/id_rsa_linux.pub"

  # 3)登录服务器,将公钥写入 authorized_keys
  ssh -p "$SERVER_PORT" "${SERVER_USER}@${SERVER_HOST}" "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat ~/id_rsa_linux.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && rm -f ~/id_rsa_linux.pub"

1.1 安装 x-cmd

x-cmd 是一个很不错的命令行工具包管理工具,内置了国内镜像,下载速度快,而且整合了很多常用工具,一键就能安装,非常方便。

安装命令:

basheval "$(curl https://get.x-cmd.com)"

安装完成后重新加载 shell 配置即可使用:

source ~/.bashrc3
source ~/.zshrc

1.2 安装基础工具

x-cmd 装好后,立即用它安装必备基础工具:

# 系统监控工具
x install htop
x install nvtop
x install nvitop

# 终端多路复用
x install tmux

# 终端美化
x install starship

# 其他工具
x install git
x install wget
x install curl
x install lazygit
x install gh

这些都是日常使用必不可少的工具:

  • htop: 系统资源监控
  • nvtop/nvitop: GPU 显存和利用率监控
  • tmux: 后台运行任务,断开 SSH 不中断
  • git: 版本控制

二、CUDA 安装

我选择镜像预装的方式,在购买服务器选择镜像的时候,直接选已经预装好了对应版本 CUDA 和 cuDNN 的镜像,节省大量时间。

优势:

  • 服务商已经帮你编译配置好了,不用自己处理依赖问题
  • 开机就能用,不用等待漫长的安装过程
  • 一般都是驱动 + CUDA + cuDNN 全套搞定

如果你需要的 CUDA 版本镜像没有提供,再考虑手动安装。


三、uv 环境配置

uv 是新一代 Python 包管理器,速度比 pip 快很多,我现在都用它来管理 Python 环境。

3.1 安装 uv

使用 x-cmd 一键安装:

x install uv

3.2 配置国内镜像

uv 安装完后必须配置国内镜像,否则下载速度很慢。我首选阿里源,其次清华源。

编辑 ~/.config/uv/uv.toml,加入以下配置:

阿里源配置:

[[index]]
url = "https://mirrors.aliyun.com/pypi/simple/"
default = true

如果阿里源不可用,切换为清华源

[[index]]
url = "https://pypi.tuna.tsinghua.edu.cn/simple/"
default = true

这样以后用 uv 安装包都会从国内镜像下载,速度飞起来。


四、Claude Code 配置(国内模型代理)

使用环境变量方式配置,兼容性最好,不容易出问题。

编辑 ~/.bashrc(如果是 zsh 就是 ~/.zshrc),在文件末尾添加:

# Claude Code 国内模型代理配置
export ANTHROPIC_BASE_URL="https://ark.cn-beijing.volces.com/api/coding"
# 替换为你自己的 API Key
export ANTHROPIC_AUTH_TOKEN="<你的API Key>"
# 自动适配最新模型
export ANTHROPIC_MODEL="ark-code-latest"
# 禁用非必要流量
export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC="1"
# 清空冲突的环境变量
export ANTHROPIC_API_KEY=""

保存退出后,让配置生效:

source ~/.bashrc
# zsh
source ~/.zshrc

验证配置:

echo $ANTHROPIC_BASE_URL
claude --version

启动 claude 后输入 /status 查看当前配置,确认模型加载正常即可。

如果要启用自动模式的话可以运行这两个中任意一个命令:

claude --permission-mode auto

五、深度学习监控工具

最后安装一些深度学习训练必备的监控工具:

5.1 swanlab

SwanLab 是国内开发的好东西,类似 Weights & Biases,但国内访问速度快稳定,免费够用。

uv pip install swanlab

5.2 tensorboard

TensorFlow 官方的可视化工具,PyTorch 也能用:

uv pip install tensorboard

六、最终一键配置脚本

下面是我整理的一键配置脚本,保存为 init_server.sh,新服务器上直接运行即可:

#!/bin/bash
# 深度学习云服务器初始化配置脚本

# 1. 安装 x-cmd
echo ">>> 安装 x-cmd..."
eval "$(curl https://get.x-cmd.com)"

# 加载 x-cmd 到当前环境
source ~/.bashrc

# 2. 安装基础工具
echo ">>> 安装基础工具..."
x install htop nvtop tmux git wget curl gh lazygit

# 3. 安装 uv
echo ">>> 安装 uv..."
x install uv

# 4. 配置 uv 阿里源
echo ">>> 配置 uv 阿里源..."
mkdir -p ~/.config/uv
cat > ~/.config/uv/uv.toml << EOF
[[index]]
url = "https://mirrors.aliyun.com/pypi/simple/"
default = true
EOF

# 5. 安装 Python 监控工具
echo ">>> 安装 Python 监控工具..."
uv pip install nvitop swanlab tensorboard

echo ">>> 基础配置完成!"
echo ""
echo "下一步:"
echo "1. 检查 CUDA 是否可用: nvcc --version"
echo "2. 配置 Claude Code 环境变量"
echo "3. 开始你的炼丹之旅!"

使用方法:

chmod +x init_server.sh
./init_server.sh

总结

我的配置原则:

  1. 能预装就预装:CUDA 让服务商帮你装好,省时间
  2. 善用包管理:x-cmd + uv 让工具安装变得简单
  3. 国内镜像:这是速度保证,一定要配置
  4. 环境变量方式配置 Claude Code:比 settings.json 兼容性更好

按照这个流程配置下来,半小时内就能得到一台可用的深度学习开发服务器。

好啦,这就是我配置深度学习云服务器的完整流程,如果你有更好的技巧,欢迎交流~

参考