温馨提示×

Linux分卷怎样备份数据

小樊
36
2025-12-31 16:23:41
栏目: 智能运维

Linux分卷备份的常用做法

一、概念与适用场景

  • 分卷备份指把一份备份数据按固定大小切分成多个文件,便于在容量受限的介质(如U盘、光盘、网盘)间传输与存放,或在传输链路对单文件大小有限制时使用。
  • 常见实现思路有两类:
    • 先归档/压缩,再用split按大小切分(通用、跨平台、易恢复)。
    • 使用支持分卷归档的工具(如RAR、7z)直接生成分卷压缩包(使用简单,依赖对应工具)。

二、方法一 tar + split 分卷(通用、推荐)

  • 打包并分卷(示例:每个分卷100MB,bzip2压缩)
    tar -cjv /path/to/data | split -b 100M -d -a 3 - backup_2025.tar.bz2.
    
    说明:
    • tar 参数:-c 创建归档,-j 使用 bzip2,-v 显示进度;输出到标准输出以配合管道。
    • split 参数:-b 100M 指定每卷大小;-d 使用数字后缀;-a 3 后缀长度为3位;末尾的点号“.”是前缀的一部分,生成如 backup_2025.tar.bz2.000、001、002…
  • 合并与解压
    cat backup_2025.tar.bz2.* | tar -xjvf -
    
    说明:cat 会自动按字典序拼接分卷;tar 的**-x** 解包,-j 解 bzip2,-v 显示过程,-f - 表示从标准输入读取。
  • 提示
    • 需要更高压缩率可用 -J(xz),但压缩/解压更慢;分卷大小可改为 1G、500M 等。
    • 传输或拷贝分卷时务必保证分卷完整且顺序一致,否则解压会失败。

三、方法二 使用 RAR 或 7z 直接分卷

  • RAR(需安装 rar)
    # 分卷:每卷 500MB
    rar a -v500M backup.rar /path/to/data
    
    # 解压:只需对 .part1.rar 执行
    unrar x backup.part1.rar
    
  • 7z(需安装 p7zip-full)
    # 分卷:每卷 500MB
    7z a -v500M backup.7z /path/to/data
    
    # 解压:对 .7z.001 执行
    7z x backup.7z.001
    
  • 适用场景:希望工具自动管理分卷、校验与分卷命名;跨平台支持良好。

四、方法三 面向 ext2/3/4 的 dump 备份与分卷思路

  • dump/restore 适合对ext2/3/4 文件系统做备份,支持增量备份(0–9 级),可用 -f 指定备份目标(如普通文件或磁带设备)。若目标为普通文件且需分卷,可结合外部工具(如 split)对生成的备份文件再切分;恢复时先合并再 restore。
  • 示例
    # 0级全备(bzip2 压缩)
    dump -0uj -f /opt/boot_full.bz2 /boot
    
    # 1级增量(仅上次备份后变更)
    dump -1uj -f /opt/boot_incr.bz2 /boot
    
    # 查看备份记录
    dump -W
    cat /etc/dumpdates
    
    # 恢复(先 0 级,再按层级顺序 1、2…)
    mkdir /opt/restore && cd /opt/restore
    restore -r -f /opt/boot_full.bz2
    restore -r -f /opt/boot_incr.bz2
    
  • 重要限制
    • 目录/文件的 dump 仅支持0级,不支持增量;因此分卷多用于把 0 级备份文件再切分存储。

五、恢复与校验要点

  • 校验分卷完整性:对分卷压缩包可用 unrar t 或 7z t 测试;对 tar+split,先 cat 合并到临时文件后执行 tar -tvf 检查内容清单。
  • 恢复顺序:
    • 分卷压缩包:直接对首卷解压(如 unrar x part1.rar 或 7z x 001),工具会自动拼合分卷。
    • tar+split:cat 合并后 tar -xjvf - 解压。
    • dump 增量:严格按**0级 → 1级 → 2级…**顺序在同一目录中连续恢复。
  • 建议做法:
    • 为备份加上时间戳与校验值(如 sha256sum),并保留至少两份异地副本
    • 关键业务可配合 crontab 做定时全备/增量,定期做恢复演练验证可用性。

0