TrueNAS 25.10 数据保护:快照、复制与 Scrub 实战
TrueNAS 25.10 数据保护实战:官方文档溯源的周期快照任务(Advanced Scheduler CRON 示例/Naming Schema 强制占位/Lifetime 多任务合并语义)、本地复制任务向导(源/目的/调度/Lifetime 三态)、Scrub 巡检(Schedule 四档 + Threshold Days),及官方 25.10 Known Issues、25.10.2 release notes 关键 Bug 修复、多协议共享自动禁用 SMB2/3 lease、NetBIOS 改名社区排障等真实排障溯源;查询日期 2026-10-25,未做本机实测。
TrueNAS 25.10 数据保护:快照、复制与 Scrub 实战
目标:基于官方文档溯源(25.10 分册 Data Protection 教程:Adding Periodic Snapshot Tasks、Setting Up a Local Replication Task、Storage UI Reference - Scrub 章节、Getting Started Known Issues、25.10.2 release notes)系统讲解 TrueNAS 25.10 的周期快照任务、本地复制任务、Scrub 健康巡检三大数据保护机制,并附官方已确认问题与排障要点;本篇为纯官方文档溯源篇,未做本机实测,所有界面字段与默认值均摘自官方文档并标注来源,查询日期 2026-10-25。
一、环境信息(信息基准)
| 项目 | 取值 | 来源 |
|---|---|---|
| 文档版本基准 | TrueNAS 25.10 (Goldeye) 官方分册 | https://www.truenas.com/docs/scale/25.10/ |
| 撰写日期 | 2026-10-25 | — |
| 实测状态 | 本机无虚拟化能力(无 /dev/kvm、无 QEMU),全部内容为官方文档溯源 | 本机探测 |
| 数据保护章节定位 | Data Protection 分册:Scrub / TrueCloud Backup / Cloud Sync / Periodic Snapshot / Rsync / Replication | https://www.truenas.com/docs/scale/25.10/scaletutorials/dataprotection/ |
本文所有"界面入口/字段/默认值"均摘自官方 25.10 分册,未实测;以官方原文为准。
二、数据保护体系总览(官方原文)
官方 Data Protection 章节原文:"The Data Protection section allows users to set up multiple redundant tasks that will protect and/or backup data in case of drive failure. Scrub Tasks can provide early disk failure alerts by identifying data integrity problems and detecting various indicators of drive reliability. TrueCloud Backup, Cloud Sync, Periodic Snapshot, Rsync, and Replication Tasks, provide backup storage for data and allow users to revert the system to a previous configuration or point in time."(https://www.truenas.com/docs/scale/25.10/scaletutorials/dataprotection/,查询日期 2026-10-25)
按官方分类,TrueNAS 25.10 数据保护能力分两大类:
| 类别 | 工具 | 作用 |
|---|---|---|
| 完整性巡检 | Scrub Tasks | 数据完整性检查、识别硬盘潜在故障、提前预警 |
| 备份/回滚 | Periodic Snapshot | 定时只读快照,按时间点回滚 |
| 备份/回滚 | Replication(Local / Remote / Advanced) | 把快照复制到本机另一池或远端系统 |
| 备份/回滚 | Rsync Tasks | 与外部主机做基于 SSH / 模块的 rsync |
| 备份/回滚 | Cloud Sync / TrueCloud Backup | 同步到第三方云存储(Google Drive/Photos、Storj iX 等) |
本教程聚焦本机数据保护三大基石:Periodic Snapshot Tasks、Replication Tasks(Local)、Scrub。
三、Periodic Snapshot Tasks(周期快照任务)
3.1 官方定位与快照原理
官方原文(https://www.truenas.com/docs/scale/25.10/scaletutorials/dataprotection/periodicsnapshottasksscale/,查询日期 2026-10-25):
"Periodic snapshot tasks allow you to schedule creating read-only versions of pools and datasets at a given point in time." "Snapshots do not make copies of the data so creating one is quick and if little data changed, they take very little space. It is common to take frequent snapshots as soon as every 15 minutes, even for large and active pools."
要点:
- 快照不复制数据本身,仅记录元数据变化;变化少则快照极小。
- 官方建议频率可至每 15 分钟一次,即便大型活跃池也可承受。
- 删除最后一个引用后空间才真正回收。
- 快照提供历史版本与已删文件找回能力;常见做法是频繁本地快照 + 定期复制到远端。
3.2 创建步骤(官方原文)
- 先创建好要保护的数据集 / zvol。
- 进入 Data Protection > Periodic Snapshot Tasks,点击 Add。
- 选择数据集 / zvol 路径,勾选 Recursive(是否递归包含子数据集)。
- 定义 Schedule:可下拉选预设,或选 Custom 使用 Advanced Scheduler。
- 定义 Naming Schema 与 Snapshot Lifetime(详见 3.3、3.4)。
- 点击 Save。
创建后任务出现在 Data Protection > Periodic Snapshot Tasks 列表;生成的快照可在 Storage > Snapshots 中查看;点击任务名可进入 Edit Periodic Snapshot Tasks 修改设置并查看任务日志。
3.3 Advanced Scheduler(CRON 高级计划)
官方原文(同页 Using the Advanced Scheduler 章节):
- 选 Custom 后填 crontab 风格的
Minutes/Hours/Days/Months/Days of Week。 *匹配全部;*/N表示每 N 个;逗号并列、连字符范围、斜杠步进。- Schedule Preview 实时显示下一次执行时间。
官方给的 CRON 例子(原文照抄):
| Syntax | 含义 | 示例 |
|---|---|---|
* | 任意值 | 分钟位填 * = 该小时每分钟都跑 |
*/N | 每第 N 个 | */15 分钟 = 每 15 分钟 |
| 逗号/连字符 | 并列 / 范围 | 1,31 分钟 = 第 1 与第 31 分;mon-fri = 工作日 |
官方给的常见需求示例(原文照抄):
| 需求 | 配置 |
|---|---|
| 一天三次(00:00 / 08:00 / 16:00) | months=*; days=*; hours=0/8 或 0,8,16; minutes=0 |
| 每周一/三/五 20:30 | months=*; days=mon,wed,fri; hours=20; minutes=30 |
| 10 月至次年 6 月每月 1 号和 15 号 00:01 | months=oct-dec,jan-jun; days=1,15; hours=0; minutes=1 |
| 工作日 08:00–19:00 每 15 分钟 | 需两条任务:① mon-fri; hours=8-18; minutes=*/15 ② mon-fri; hours=19; minutes=0 |
3.4 Naming Schema(快照命名规则)
官方原文(同页 Using Naming Schemas 章节):
- 合法 schema 必须包含
%Y、%m、%d、%H、%M五个时间占位。 - 可附加 Python
strptime任意标识符,例如%S(秒)提精度、%z(时区)避免夏令时切换冲突。 - 若快照要被增量复制(Replication)使用,请保留默认命名 schema;仅全量复制可自定义。
官方示例(原文照抄):
| Naming Scheme | 生成的快照名 |
|---|---|
replicationsnaps-1wklife-%Y%m%d_%H:%M | replicationsnaps-1wklife-20210120_00:00、replicationsnaps-1wklife-20210120_06:00 |
autosnap_%Y.%m.%d-%H.%M.%S-%z | autosnap_2021.01.20-00.00.00-EST、autosnap_2021.01.20-06.00.00-EST |
⚠️ 官方提醒:若该快照将被 Windows 主机访问,避免使用冒号
:等 Windows 文件路径非法字符,并注意 Windows 应用对路径长度与空格的限制。
3.5 Snapshot Lifetime(快照生命周期)
官方原文(同页 Setting Snapshot Lifetimes 章节):
- Lifetime 决定调度器何时把该快照视为可清理对象;例如 2 周 lifetime + 每周一次的调度,实际删除时间可能拖至第 3 周(因带时间戳的快照要等到下一次任务运行才被评估清理)。
- 当多个周期任务都引用同一快照时,TrueNAS 会保留至所有任务都不再需要它才删除。官方原文举例:任务 A 每小时快照保留 1 周,任务 B 每天快照保留 3 年,则每天 00:00 的那份快照会被保留 3 年。
四、Replication Tasks(复制任务):以本地复制为例
4.1 官方定位
官方原文(https://www.truenas.com/docs/scale/25.10/scaletutorials/dataprotection/replication/localreplicationscale/,查询日期 2026-10-25):
"A local replication creates a ZFS snapshot and saves it to another location on the same TrueNAS system using different pools, datasets, or zvols." "While we recommend regularly scheduled replications to a remote location as the optimal backup scenario, local replication is useful when a remote backup location is not available or when a disk is in immediate danger of failure."
要点:
- 首次复制为全量快照,后续为增量。
- 本地复制不需要 SSH、不需要 home 目录、不需要 sudo。
- 官方推荐:远程复制(remote replication)才是最优备份方案;本地复制适合单机快速备份或磁盘临近故障应急。
- 用 zvol 当目标端要预先规划容量——zvol 空间独占,未使用部分不会归还池子。
4.2 准备阶段(官方 Before You Begin)
- 在源端先创建对应的 Periodic Snapshot Task(若未建,复制向导会自动创建)。
- 在目标池 / 数据集上确认不存在冲突快照(关键数据先备份),否则可能导致覆盖/删除。
- 决定用 Replication Task Wizard 还是 Advanced Replication Creation——官方提醒:向导设置不会自动带到高级页;切到高级页时若没确认就直接离开,向导设置会丢。
4.3 配置步骤(官方原文)
进入 Data Protection > Replication Tasks,点 Add 打开 Replication Task Wizard:
- Load Previous Replication Task:默认
--(无),可加载已有任务快速复制出新任务。 - Source / Destination 选择:
- 本地复制:两端都选 On This System。
- 远程复制:一端选 On a Different System,另一端自动锁定为 On This System;两端不能同时为 Different System。
- Source 支持多选与手输;Destination 路径尾部追加
/<name>可在该位置新建数据集;zvol 可作为本地复制目标端。
- Task Name:默认按
source-destination拼接,官方建议改为易识别名(如dailyfull),便于在目标池定位快照。 - Replication Schedule:
Run On a Schedule+ 选择 Schedule(daily/weekly/monthly/custom);- 或
Run Once仅跑一次。
- Destination Snapshot Lifetime:
Same as Source(默认):与源端快照同生命周期;Never Delete:永不自动删除;Custom:自定义时长,如2 Weeks。
- 点 Save 保存。
4.4 运行与验证(官方原文)
- 保存后任务出现在 Replication Task widget,状态为
PENDING。 - 点 Run Now 立即执行一次;点任务 State 列打开执行日志对话框。
- 查看复制生成的快照:进 Datasets,选中目标数据集 → Data Protection widget → Manage Snapshots;列表中点 Show extra columns 可加"创建日期"等列;也支持按名称搜索。
五、Scrub(数据巡检)
5.1 官方定位
官方原文(https://www.truenas.com/docs/scale/25.10/scaleuireference/storage/ 中 Storage Health widget / Configure Scheduled Scrub 章节,查询日期 2026-10-25):
"A scrub is a data integrity check of your pool. Scrubs identify data integrity problems, detect silent data corruptions caused by transient hardware issues, and provide early disk failure alerts. By default, TrueNAS automatically checks every pool to verify it is on a recurring scrub schedule. If TrueNAS detects problems during the scrub, it corrects them automatically or generates an alert."
要点:
- Scrub 用于发现"静默数据损坏(silent data corruption)"和早期硬盘故障征兆。
- 默认每个池都会自动配上循环 Scrub 计划。
- 检测到问题可自动修复,或触发 Alert 通知。
5.2 Storage Health widget 字段
- Scheduled Scrub:显示计划时间与频率。
- Auto TRIM:是否启用自动 TRIM。
- Last Scan:最近一次完成的 Scrub 时间。
- Last Scan Errors:最近一次发现的错误数。
- Last Scan Duration:最近一次耗时(分:秒)。
- Deduplication Table:仅当池有 dedup VDEV 时显示。
5.3 立即执行 Scrub
Storage Health widget → Scrub Now 打开 Scrub Pool 对话框 → Start Scrub 即启动一次完整数据完整性检查。
5.4 配置计划 Scrub(官方 Configure Scheduled Scrub Screen 字段)
| 字段 | 取值 / 含义 |
|---|---|
| Enabled | 关闭时 Scheduled Scrub 显示为 Not Set |
| Schedule | Hourly(每小时整点)/ Daily(每日 00:00,系统负载最低时段)/ Weekly(周日 00:00)/ Monthly(每月 1 号 00:00) |
| Threshold Days | 距上次成功 Scrub 必须间隔的天数。例如 Schedule=Daily、Threshold=7,则每天会尝试但仅距上次成功 7 天后才真跑;用 7 的倍数可让 Scrub 总在同一 weekday |
| Save | 把计划写入 Storage Health widget |
六、官方已知问题与排障溯源
本节均摘自官方 Getting Started Known Issues 与 25.10.2 release notes,并标注来源与查询日期;本机未实测复现。
6.1 Apps 与 SMB/NFS 启动竞态(Known Issues 原文)
来源:https://www.truenas.com/docs/scale/25.10/printview/gettingstarted/ (Current Known Issues,查询日期 2026-10-25)
"Apps using SMB/NFS storage can experience race condition during boot. When apps are configured to use SMB or NFS shares as storage passthroughs, there can be an occasional race condition during TrueNAS boot where the app startup conflicts with the sharing services startup. This causes affected apps to not fully start and show a 'crashed' status." Workaround: Restart the affected app after a minute or two.
排障要点:若重启 TrueNAS 后某个挂载了 SMB/NFS 共享的 App 显示 crashed,等 1–2 分钟后手动重启该 App即可,不必动共享配置。
6.2 25.10.2 已修复的与共享/升级相关的关键 Bug(release notes 原文)
来源:https://update.ixsystems.com/scale/TrueNAS-SCALE-Goldeye/TrueNAS-SCALE-25.10.2.release-notes.txt (查询日期 2026-10-25)
"Critical Bug Fixes: Fixes critical upgrade failure affecting some systems upgrading from 25.04 to 25.10, SMB service startup with legacy ACL configurations, disk replacement validation errors, and network lockouts from invalid IPv6 routes." "Performance Improvements: Enhanced NFS performance for NFSv4 clients, faster ZFS pool imports and write operations, reduced CPU usage for containerized applications."
排障要点:
- 从 25.04 升 25.10 失败 → 升级到 25.10.2 及以上。
- 老 ACL 配置导致 SMB 服务起不来 → 25.10.2 已修,升级即可。
- IPv6 路由配错把 Web UI 锁死 → 25.10.2 已修;旧版本可在 Console Setup 菜单重置网络。
- NFSv4 性能差 → 25.10.2 起有官方增强。
6.3 多协议 SMB/NFS 共享时 SMB2/3 lease 自动禁用(25.04 起)
来源:https://www.truenas.com/docs/scale/25.04/printview/gettingstarted/ (25.04-RC.1 Notable Changes,查询日期 2026-10-25)
"To prevent unexpected failures in SMB shares, TrueNAS automatically disables SMB2/3 lease support and AAPL extensions (typically used to configure Time Machine) globally when multiprotocol SMB/NFS shares are enabled (NAS-133680)."
排障要点:启用多协议共享(同一数据集同时 SMB+NFS)后,Time Machine 备份会失败——这是官方预期行为,不是故障。需要 Time Machine 时,请把它放到独立 SMB 共享,不要混用多协议。
6.4 Windows 10 客户端无法访问 SMB(社区已知问题)
来源:https://www.truenas.com/community/threads/i-broke-smb-windows-10-clients-fixed-solution-inside.102074/ (TrueNAS Community,查询日期 2026-10-25)
社区已确认:修改 SMB 的 NetBIOS Name 后,还需在 Network > Global Configuration 同步修改对应主机名,否则 Windows 10 客户端会因解析失败无法访问共享。两步同时改才能恢复。
排障要点:改 NetBIOS 名 → 同步改 Network Global Configuration 中的主机名。
七、推荐运维节奏(基于官方建议归纳)
| 任务 | 官方推荐频率 | 说明 |
|---|---|---|
| Periodic Snapshot | 每 15 分钟一次亦可承受 | 快照本身开销极低;按业务保留期定 Lifetime |
| Local Replication | 每日一次 + 关键磁盘告警时立即 Run Now | 单机容灾 |
| Remote Replication | 官方推荐的"最优备份方案" | 跨机/异地;本教程未展开 |
| Scrub | 默认周期即可, Threshold 用 7 的倍数 | 让巡检落在固定 weekday |
| 升级 | 关注 release-notes,等官方修关键 Bug 再升 | 例:25.04→25.10.0 有升级失败 Bug,等 25.10.2 |
八、与姊妹篇衔接
- 版本/硬件/安装规划:《TrueNAS 25.10 安装规划与硬件选型指南》
- 存储池与共享:《TrueNAS 25.10 存储池与共享服务配置详解》
- 选型与对比:《TrueNAS 25.10 介绍与选型指南》
九、参考来源
- https://www.truenas.com/docs/scale/25.10/scaletutorials/dataprotection/ (查询日期 2026-10-25)
- https://www.truenas.com/docs/scale/25.10/scaletutorials/dataprotection/periodicsnapshottasksscale/ (查询日期 2026-10-25)
- https://www.truenas.com/docs/scale/25.10/scaletutorials/dataprotection/replication/localreplicationscale/ (查询日期 2026-10-25)
- https://www.truenas.com/docs/scale/25.10/scaleuireference/storage/ (Storage Health / Scrub 章节,查询日期 2026-10-25)
- https://www.truenas.com/docs/scale/25.10/printview/gettingstarted/ (Current Known Issues,查询日期 2026-10-25)
- https://update.ixsystems.com/scale/TrueNAS-SCALE-Goldeye/TrueNAS-SCALE-25.10.2.release-notes.txt (查询日期 2026-10-25)
- https://www.truenas.com/docs/scale/25.04/printview/gettingstarted/ (25.04 Notable Changes,查询日期 2026-10-25)
- https://www.truenas.com/community/threads/i-broke-smb-windows-10-clients-fixed-solution-inside.102074/ (查询日期 2026-10-25)