Ubuntu 24.04 使用 Veeam Agent 进行系统备份与恢复完整教程
Veeam Agent for Linux 是一款企业级的免费备份工具,支持完整磁盘备份、增量备份和裸机恢复。相比传统的 rsync、Timeshift 或 dd 镜像,Veeam 提供了更专业的备份恢复解决方案,特别适合需要完整系统恢复能力的场景。
教程概述
本教程将带你完成在 Ubuntu 24.04 桌面版上安装和配置 Veeam Agent for Linux 的完整过程。内容包括:
- 环境准备:系统要求和前置条件
- 安装配置:Veeam Agent 安装与图形化配置
- 备份策略:SMB/NAS 备份目标设置与调度
- 备份机制:增量备份与保留策略详解
- 恢复操作:文件恢复与裸机恢复流程
- 最佳实践:日常维护与常见问题处理
一、为什么选择 Veeam
在选择备份方案时,需要考虑以下因素:
| 方案 | 裸机恢复 | 增量备份 | 空间效率 | 适用场景 |
|---|---|---|---|---|
| rsync | 不支持 | 支持 | 高 | 文件同步 |
| Timeshift | 不支持 | 支持 | 中 | 系统快照 |
| dd 镜像 | 支持 | 不支持 | 低 | 完整磁盘克隆 |
| Veeam | 支持 | 支持 | 高 | 企业级备份 |
Veeam 的优势:
- 支持完整的裸机恢复(Bare-metal Restore)
- 智能 block-level 备份,只备份已用块并压缩
- 支持 SMB/NFS 网络存储作为备份目标
- 提供图形化配置界面(TUI)
- 免费版功能足够个人和小型团队使用
二、环境准备
1. 系统要求
- 操作系统:Ubuntu 24.04 LTS(已安装)
- 权限:需要 root 或 sudo 权限
- 存储:NAS 或其他支持 SMB/NFS 的网络存储设备
2. 安装 SMB 支持
如果备份目标是 SMB 共享,需要安装 cifs-utils:
1 | sudo apt install cifs-utils |
3. 准备备份目标
在 NAS 上创建备份目录,并确保:
- 创建专用备份账号(非管理员权限)
- 创建备份目录结构,如
veeam-backup/<主机名> - 确保账号对该目录有读写权限
三、下载和安装 Veeam
1. 下载官方仓库包
访问 Veeam Agent for Linux 官方下载页面。
下载流程:
- 点击
Download Free Agent按钮 - 根据提示填写注册信息(首次下载需要注册 Veeam 账号)
- 在下载页面选择
Veeam Agent for Linux - 下载适用于 Debian/Ubuntu 的仓库包文件
下载的文件名格式如下(版本号可能不同):
1 | veeam-release-deb_13.0.1_amd64.deb |
将文件保存到 ~/Downloads 目录。
2. 安装仓库包
使用 apt install 命令安装本地 deb 包,该方式会自动处理依赖关系:
1 | cd ~/Downloads |
命令解释:
apt install ./:安装本地 deb 包,使用./前缀表示当前目录下的文件- 相比
dpkg -i,apt install会自动解决依赖问题 - 该包会将 Veeam 官方软件源添加到系统的
/etc/apt/sources.list.d/目录
预期输出:
1 | Reading package lists... Done |
3. 更新软件源索引
安装仓库包后,需要更新软件源索引以获取 Veeam 软件包信息:
1 | sudo apt update |
预期输出(部分):
1 | Get:1 https://repository.veeam.com/backup/linux/agent/dpkg/debian/x86_64 noble InRelease |
如果看到 Veeam 仓库的获取信息,说明仓库包安装成功。
4. 安装 Veeam Agent 及依赖
1 | sudo apt install blksnap veeam |
命令解释:
blksnap:Veeam 使用的 block-level 快照驱动模块,用于在备份时创建一致性快照veeam:Veeam Agent for Linux 主程序,包含命令行工具和 TUI 界面
安装过程说明:
安装过程中会自动执行以下操作:
- 下载并安装 Veeam Agent 及其依赖包
- 构建 DKMS 内核模块(blksnap 驱动)
- 加载快照驱动到内核
预期输出(部分):
1 | Setting up blksnap-dkms (2.4.0.27) ... |
注意:如果系统内核更新后,DKMS 会自动为新内核重新编译 blksnap 模块。
5. 验证安装
确认 Veeam 安装成功:
1 | sudo veeamconfig --version |
预期输出:
1 | v13.0.1.94 |
验证 blksnap 内核模块是否加载:
1 | lsmod | grep blksnap |
预期输出:
1 | blksnap xxx 0 |
如果没有输出,可以手动加载模块:
1 | sudo modprobe blksnap |
6. 启动 Veeam 服务
Veeam Agent 服务通常会自动启动,可以验证服务状态:
1 | sudo systemctl status veeamservice |
预期输出(部分):
1 | ● veeamservice.service - Veeam Agent for Linux |
如果服务未启动,手动启动并设置开机自启:
1 | sudo systemctl start veeamservice |
四、配置备份任务
1. 启动图形化配置界面
1 | sudo veeam |
进入 Veeam 的 TUI(文本用户界面)配置界面。
2. 创建新备份任务
按 C 键创建新任务(Create Job),输入任务名称:
1 | Job name: <主机名> |
3. 选择备份模式
选择 Entire Machine(整机备份):
1 | (X) Entire Machine |
该模式将备份整个系统盘,包括:
- EFI 分区(
/boot/efi) - 根分区(
/) - 支持裸机恢复
4. 选择备份卷
选择要备份的磁盘,通常是系统盘:
1 | nvme0n1 |
5. 配置备份目标(SMB)
选择 Shared folder 作为备份目标类型,填写 SMB 连接信息:
| 配置项 | 示例值 |
|---|---|
| 服务器 | 192.168.5.5 |
| 共享文件夹 | share-name/veeam-backup/<主机名> |
| 用户名 | backup-user |
| 密码 | <SMB账号密码> |
| Retention | 14 days |
注意事项:
- 共享文件夹路径不要以
/开头 - 建议使用专用备份账号,避免使用管理员账号
- Retention 设置保留的恢复点数量
6. 配置备份计划
设置每日自动备份时间:
1 | Daily at 06:00 |
勾选所有工作日。
7. 确认并完成
查看配置摘要:
1 | Job name: <主机名> |
按 Finish 完成配置。首次备份会自动创建全量备份(.vbk 文件)。
五、备份机制详解
1. 备份文件类型
| 文件扩展名 | 说明 |
|---|---|
.vbk |
全量备份文件(Full Backup) |
.vib |
增量备份文件(Incremental Backup) |
.vbm |
备份元数据文件 |
2. 备份链结构
1 | Full (vbk) |
3. Retention 策略
以 14 天保留策略为例:
- 保留最近 14 个恢复点
- 超过保留期限后,自动删除旧的备份链
- 删除旧链后,自动创建新的全量备份
4. 备份效率
Veeam 使用智能 block-level 备份技术:
- 只备份已使用的磁盘块
- 自动压缩数据
- 例如:953GB 磁盘(使用 134GB)可能只生成约 40GB 的备份文件
六、常用管理命令
1. 任务管理
1 | # 列出所有备份任务 |
2. 备份管理
1 | # 列出所有恢复点 |
3. 图形界面
1 | # 启动 TUI 界面 |
七、文件恢复(Recover Files)
当需要恢复误删文件或旧版本文件时,可以使用文件恢复功能。
1. 启动文件恢复
1 | sudo veeam |
按 R 键选择 Recover Files。
2. 选择恢复点
从列表中选择需要的恢复点(按日期选择)。
3. 访问备份文件
备份内容会挂载到 /mnt/backup/ 目录:
1 | # 浏览备份内容 |
4. 修复文件权限
恢复的文件可能属于 root 用户,需要修改权限:
1 | sudo chown $(whoami):$(whoami) ~/document.txt |
5. 卸载恢复挂载点
完成恢复后,卸载挂载点:
1 | sudo veeamconfig session stop --mount |
八、制作恢复介质
恢复介质(Recovery ISO)用于裸机恢复场景,强烈建议提前制作并妥善保存。
1. 创建恢复 ISO
1 | sudo veeam |
选择 M(Misc)→ Create Recovery Media。
生成的 ISO 文件可用于:
- 使用 BalenaEtcher 写入 U 盘
- 添加到 Ventoy 启动盘
- 保存到安全位置备用
2. 注意事项
- 建议每 3 个月更新一次恢复 ISO
- 确保恢复 ISO 与当前 Veeam 版本兼容
- 测试恢复 ISO 能否正常启动
九、裸机恢复流程
当系统磁盘损坏需要完整恢复时,使用裸机恢复功能。
1. 准备工作
- 替换损坏的硬盘(容量需大于等于原盘)
- 使用恢复 ISO 启动 U 盘
2. 恢复步骤
- 从 U 盘启动进入恢复环境
- 选择
Bare-metal Recovery - 连接 SMB 备份库(输入服务器地址和凭据)
- 选择要恢复的恢复点
- 选择
Entire Machine Restore - 确认目标磁盘(系统会自动重建分区表)
- 等待恢复完成
- 重启系统
3. 恢复结果
- 系统与备份时完全一致
- 所有分区(GPT/EFI/root)自动重建
- 应用程序和配置全部保留
十、验证备份可恢复性
定期验证备份是否可恢复是运维的最佳实践。
验证方法
- 使用恢复 ISO 启动(可使用虚拟机测试)
- 进入恢复流程
- 连接备份库并选择恢复点
- 到分区确认步骤时按
Cancel取消
如果能够看到正确的分区布局信息,说明备份数据完整可恢复。
十一、排除大数据目录
如果有大型数据目录(如 Docker 数据、项目文件)不需要随系统备份,可以将其迁移到独立磁盘。
方案
- 将大数据目录(如
/home/user/docker、/home/user/project)迁移到独立磁盘 - 使用 bind mount 挂载回原路径
- Veeam 只备份系统盘,不会包含独立磁盘的内容
配置示例
编辑 /etc/fstab:
1 | /mnt/data/docker /home/user/docker none bind 0 0 |
十二、最佳实践
日常维护建议
- 每月手动触发一次全量备份
- 每 3 个月更新恢复 ISO
- 每半年模拟恢复一次,验证备份有效性
- 监控备份任务执行状态
空间管理
- 定期检查备份目标存储空间
- 磁盘空间不足时,可适当缩短 Retention 周期
- 清理不需要的旧备份
十三、常见问题
Q:为什么全量备份文件比磁盘容量小很多?
A:Veeam 使用 block-level 备份,只备份已使用的磁盘块,并进行压缩。例如 953GB 磁盘(使用 134GB)可能只生成约 40GB 的备份文件。
Q:能否恢复到空白新硬盘?
A:完全可以。裸机恢复功能会自动重建分区表和所有分区。
Q:增量备份链中删除了某个文件怎么办?
A:Veeam 会在备份链中正确记录文件删除操作。你可以选择文件删除之前的恢复点来恢复该文件。
Q:SMB 连接失败怎么办?
A:检查以下项目:
- 确保安装了
cifs-utils - 确认 NAS 的 SMB 服务已启用
- 检查用户名和密码是否正确
- 确认网络连通性(可用
ping测试)
十四、命令速查表
1 | # 图形界面 |
总结
通过本教程,你已经完成了 Veeam Agent for Linux 的完整配置:
- 安装配置:成功安装 Veeam 并配置了 SMB 备份目标
- 自动备份:设置了每日自动增量备份计划
- 恢复能力:掌握了文件恢复和裸机恢复的操作方法
- 维护技能:了解了日常管理命令和最佳实践
Veeam 提供了企业级的备份恢复能力,配合 NAS 存储可以实现可靠的系统保护。建议定期验证备份的可恢复性,确保在需要时能够顺利恢复系统。