基础环境准备:Linux系统选择与安装、SSH远程连接配置、基础命令行工具

说实话,做机器学习这几年,我踩过最大的坑就是环境问题。模型写得再漂亮,环境配不好,全白搭。今天咱们就把这第一步走稳了。

Linux发行版怎么选?我的建议

我个人习惯用Ubuntu LTS版本。为什么?说白了,社区支持最好,遇到问题一搜就有答案。我刚开始做深度学习那会儿,试过CentOS,结果装个CUDA驱动折腾了两天——嗯,从那以后我就老实了。

如果你问我具体版本:

  • Ubuntu 20.04 LTS:最稳妥的选择,PyTorch、TensorFlow官方都测试过
  • Ubuntu 22.04 LTS:新一些,内核更新,对RTX 40系显卡支持更好
  • Debian 11/12:如果你追求极致稳定,可以考虑,但软件源稍旧
我的小建议:新手别折腾Arch Linux或Gentoo。你想想看,装个系统就要编译半天,哪有精力搞模型训练?

安装流程:三步搞定

安装其实不复杂,我总结成三步:

  1. 制作启动盘:用Rufus(Windows)或balenaEtcher(macOS)把ISO写入U盘
  2. 分区规划:至少分三个区——/(根目录)、/home(用户数据)、swap(交换分区)
  3. 安装系统:跟着向导走,注意勾选“安装第三方驱动”
注意:如果你有NVIDIA显卡,安装时一定要勾选“安装第三方软件和驱动”。我曾经因为没勾这个,装完系统黑屏,折腾了一下午。

SSH远程连接配置

模型训练通常跑在服务器上,你不会每次都跑去机房操作吧?SSH就是你的远程遥控器。

服务端配置(你的Linux机器)

# 安装SSH服务
sudo apt update
sudo apt install openssh-server

# 检查服务状态
sudo systemctl status ssh

# 修改配置(建议)
sudo vim /etc/ssh/sshd_config

# 我习惯改这几个参数:
Port 2222                    # 改默认端口,减少被扫描的风险
PermitRootLogin no           # 禁止root直接登录
PasswordAuthentication yes   # 先用密码登录,后面配密钥

客户端连接(你的笔记本)

# 从Windows/macOS连接
ssh username@服务器IP -p 2222

# 配置密钥登录(推荐)
ssh-keygen -t ed25519        # 生成密钥对
ssh-copy-id -p 2222 username@服务器IP  # 把公钥传到服务器
避坑指南:我曾经在公网上暴露了默认22端口的SSH,结果一天被暴力破解了3000多次。从那以后,我必做两件事:改端口、配密钥登录。

基础命令行工具

你想想看,没有图形界面的时候,全靠命令行。我整理了一套“必装清单”:

工具 用途 安装命令
htop 实时监控CPU/内存 sudo apt install htop
nvidia-smi 查看GPU状态 安装NVIDIA驱动后自带
tmux 终端复用器(断网不丢任务) sudo apt install tmux
git 代码版本管理 sudo apt install git
curl/wget 下载文件 通常预装
vim/nano 文本编辑器 sudo apt install vim

我个人最常用的是tmux。为什么?训练模型动不动跑十几个小时,万一网络断了,任务就没了。用tmux开个会话,关掉终端都没事,回来还能接着看。

# tmux 常用操作
tmux new -s train      # 新建会话,取名train
Ctrl+b d               # 脱离会话(detach)
tmux attach -t train   # 重新连接会话

知识体系总览

下面这张图,是我自己总结的环境准备流程。你照着走,基本不会出大问题。

基础环境准备知识体系 Linux系统选择与安装 SSH远程连接配置 基础命令行工具 发行版选择 Ubuntu 20.04/22.04 LTS 分区规划(/ /home swap) NVIDIA驱动安装 制作启动盘 → 安装系统 SSH配置要点 安装 openssh-server 修改端口(2222) 禁止root登录 配置密钥登录 必备工具清单 htop(监控) nvidia-smi(GPU) tmux(终端复用) git / curl / vim ✅ 可用的模型训练环境 三个模块缺一不可,建议按顺序完成

验证环境是否就绪

装完这些东西,怎么知道对不对?我一般跑几个命令验证:

# 1. 检查系统版本
lsb_release -a

# 2. 检查SSH连接
ssh -p 2222 localhost   # 能连上自己就说明服务正常

# 3. 检查GPU
nvidia-smi              # 能看到显卡信息就OK

# 4. 检查网络
ping -c 4 8.8.8.8       # 能通说明网络没问题
我的经验:环境准备这一步,宁可多花半小时验证,也别急着跑模型。我见过太多人装完系统就开搞,结果训练到一半发现GPU没驱动——那才叫欲哭无泪。

好了,基础环境就这些。你照着做,基本不会出大问题。记住:稳扎稳打,后面才能跑得快。


专注资料整理