安装 GeneFace++ 所需的 Linux 知识
一 基础命令与软件包管理
- 发行版与包管理:熟悉 Ubuntu/Debian 的 apt 或 CentOS/RHEL 的 yum/dnf 基本用法(更新索引、安装/卸载软件、搜索包)。
- 常用工具链:会安装与更新 git、wget/curl、build-essential/cmake、python3、python3-pip 等开发与构建工具。
- 权限与路径:理解 sudo 的使用场景,掌握 ~/.bashrc 或 ~/.zshrc 的环境变量配置与生效方式(如 source ~/.bashrc)。
- 示例(按发行版区分思路):
- Ubuntu/Debian:sudo apt update && sudo apt install -y git cmake python3 python3-pip
- CentOS/RHEL:sudo yum groupinstall -y "Development Tools" && sudo yum install -y cmake git python3 python3-devel
- 说明:GeneFace++ 官方流程以 conda + pip 为主管理 Python 依赖,但系统级包管理与构建工具仍是前置能力。
二 Python 与 Conda 虚拟环境
- Conda 基础:能创建与激活环境(如 conda create -n geneface python=3.9;conda activate geneface),理解环境隔离的意义。
- PyTorch 与 CUDA:按官方推荐安装匹配版本的 PyTorch 2.0.1 + cu117(命令示例:conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia),理解 CUDA 版本与显卡驱动的对应关系。
- 关键依赖:会用 pip 安装 pytorch3d、mmcv、openmim、cython 等(如 pip install "git+https://github.com/facebookresearch/pytorch3d.git@stable";mim install mmcv==2.1.0)。
- 环境一致性:能导出/复用环境(如 conda env export),便于复现与迁移。
三 GPU 驱动 CUDA 与 cuDNN 基础
- 驱动与工具链:了解 NVIDIA 驱动、CUDA Toolkit、cuDNN 的基本作用与版本匹配要求;能检查版本(如 nvidia-smi、nvcc --version)。
- 运行时配置:理解 LD_LIBRARY_PATH、CUDA_VISIBLE_DEVICES 等环境变量的作用与设置方法;能在多卡环境下选择设备(如 export CUDA_VISIBLE_DEVICES=0)。
- 版本匹配:GeneFace++ 教程常用 PyTorch 2.0.1 + CUDA 11.7 的组合,需确保驱动与 CUDA 兼容。
四 多媒体工具与数据处理
- FFmpeg:会用 ffmpeg 完成视频/音频处理(如将视频统一到 512×512、25 FPS,音频抽取为 16 kHz WAV),理解常见参数含义(-vf fps=、scale=、-ar)。
- 音频特征与数据管线:能按流程运行 Hubert、Mel、F0 等特征提取脚本,理解输入/输出路径与数据组织规范。
- 其他系统工具:必要时安装 portaudio19-dev、libasound2-dev(音频依赖)、rsync(数据同步)等系统库,解决“缺依赖”类编译/运行问题。
五 常见故障排查与系统管理
- 权限与目录:理解 权限不足/路径不存在 的典型报错,能用 sudo、chmod/chown 与正确的相对/绝对路径解决。
- 依赖冲突与镜像:会用 国内镜像源(如 HF_ENDPOINT=https://hf-mirror.com)加速下载,能处理 pip/conda 的依赖冲突与版本回退。
- 日志与定位:会查看 Python traceback、ffmpeg 输出、shell 返回码,据此定位是依赖、路径、设备还是数据问题。
- 资源与稳定性:了解 显存/内存 的基本占用特征,能在资源不足时调整批量大小、分辨率或改用更小模型/更少步骤进行验证。