首页主机资讯centos stream8备份策略

centos stream8备份策略

时间2026-01-19 11:37:03发布访客分类主机资讯浏览1346
导读:CentOS Stream 8 备份策略与落地方案 一 策略总览 备份范围与层级 系统配置:优先备份 /etc、包管理状态(如 rpm/dnf 数据库)、关键服务配置(如 nginx、postfix、firewalld)。 业务数据:按...

CentOS Stream 8 备份策略与落地方案

一 策略总览

  • 备份范围与层级
    • 系统配置:优先备份 /etc、包管理状态(如 rpm/dnf 数据库)、关键服务配置(如 nginx、postfix、firewalld)。
    • 业务数据:按业务划分目录(如 /var/www、/opt、/srv),数据库单独备份(如 MySQL/MariaDB、PostgreSQL)。
    • 排除项:避免备份 /proc、/sys、/dev、/tmp、/run、/mnt、/media、/lost+found 等虚拟或临时文件系统。
  • 备份类型与频率
    • 全量:每周一次,保留最近 2–4 周。
    • 增量:每日一次(或每 6–12 小时一次),保留最近 7–14 天。
    • 实时/近实时:对关键目录使用 Syncthing 等工具做持续同步到独立主机/云端。
  • 存储与保留
    • 采用 3-2-1 策略:至少 3 份副本、2 种不同介质、1 份异地/离线。
    • 本地保留用于快速回滚,异地/云端用于灾难恢复。
  • 安全与合规
    • 备份数据加密(传输与静态)、最小权限访问、记录操作审计。
  • 恢复目标
    • 明确 RPO(恢复点目标)RTO(恢复时间目标),据此选择频率与保留周期。
  • 重要提醒
    • CentOS Stream 8 已于 2024-05-01 终止维护,官方不再提供 yum 源与安全更新,存在严重安全隐患。建议尽快升级至 CentOS Stream 9 或迁移至 Rocky Linux 8/9;在过渡期务必强化备份与隔离网络访问。

二 工具与方法选型

  • 文件与目录
    • tar:创建压缩归档,适合全量与配置快照;可排除虚拟/临时目录。
    • rsync:本地/远程同步,支持增量;配合 –link-dest 实现“快照式”增量保留,节省空间。
  • 数据库
    • MySQL/MariaDB:逻辑备份用 mysqldump;物理/热备可用 Percona XtraBackup(支持全量/增量)。
    • PostgreSQL:使用 pg_dump/pg_dumpall 做逻辑备份,或文件系统/块级快照(需一致性保障)。
  • 实时/近实时
    • Syncthing:多端持续同步,适合关键目录的近实时备份与多机互备。
  • 自动化与编排
    • cron 定时任务、systemd 服务管理、日志轮转(如 logrotate)与备份清单校验。

三 示例方案与命令

  • 全量与增量备份脚本(rsync + 快照式保留)
    • 目录结构:/backups/rsync/YYYYMMDD/
    • 首次全量
      #!/usr/bin/env bash
      set -Eeuo pipefail
      BACKUP_ROOT="/backups/rsync"
      DATE=$(date +%Y%m%d)
      SRC="/etc /var"
      EXCLUDE=(/dev /proc /sys /tmp /run /mnt /media /lost+found)
      
      mkdir -p "$BACKUP_ROOT/$DATE"
      RSYNC_OPTS=(-a -z --delete)
      for e in "${
      EXCLUDE[@]}
          ";
       do
        RSYNC_OPTS+=(--exclude="$e")
      done
      
      rsync "${
      RSYNC_OPTS[@]}
          " $SRC "$BACKUP_ROOT/$DATE/"
      
    • 后续增量(基于 --link-dest 快照)
      # 在上面的脚本末尾追加(示例保留最近7天)
      KEEP=7
      PREV=$(date -d "$DATE -1 day" +%Y%m%d)
      if [[ -d "$BACKUP_ROOT/$PREV" ]];
       then
        rsync "${
      RSYNC_OPTS[@]}
          " --link-dest="$BACKUP_ROOT/$PREV" $SRC "$BACKUP_ROOT/$DATE/"
      fi
      
      # 清理过期
      ls -1 "$BACKUP_ROOT" | sort -r | tail -n +$((KEEP+1)) | xargs -r rm -rf
      
  • 全量归档备份(tar)
    sudo mkdir -p /backups/tar
    sudo tar -czvf /backups/tar/centos_stream_$(date +%Y%m%d).tar.gz \
         --exclude=/proc --exclude=/sys --exclude=/dev --exclude=/tmp \
         --exclude=/run --exclude=/mnt --exclude=/media --exclude=/lost+found \
         /etc /var
    
  • 数据库备份示例
    • MySQL/MariaDB
      mysqldump -u root -p --single-transaction --routines --triggers --databases your_db >
           /backups/db/your_db_$(date +%F).sql
      
    • PostgreSQL
      pg_dump -U postgres -F c -f /backups/db/pg_$(date +%F).dump your_db
      
  • 实时同步(Syncthing,关键目录近实时)
    # 安装后修改 /root/.config/syncthing/config.xml 中 <
        address>
        127.0.0.1:8384<
        /address>
         为 <
        address>
        0.0.0.0:8384<
        /address>
        
    sudo systemctl restart syncthing@root.service
    sudo systemctl enable syncthing@root.service
    
  • 定时任务(cron)
    # 每天 02:00 执行全量/增量脚本
    0 2 * * * /usr/local/bin/backup_rsync.sh >
        >
         /var/log/backup_rsync.log 2>
        &
        1
    
    # 每周日 03:00 做一次 tar 全量归档
    0 3 * * 0 /usr/local/bin/backup_tar.sh   >
        >
         /var/log/backup_tar.log  2>
        &
        1
    

以上命令与做法基于 tar/rsync/Syncthing/cron 的常用实践,适用于 CentOS Stream 8 的文件与配置备份场景。

四 恢复流程与验证

  • 目录/配置恢复(rsync)
    sudo rsync -avz /backups/rsync/2025*/etc/  /etc/
    sudo rsync -avz /backups/rsync/2025*/var/  /var/
    
  • 归档恢复(tar)
    sudo tar -xzvf /backups/tar/centos_stream_2025-*.tar.gz -C /
    
  • 数据库恢复
    • MySQL/MariaDB
      mysql -u root -p <
           /backups/db/your_db_2025-*.sql
      
    • PostgreSQL
      pg_restore -U postgres -d your_db /backups/db/pg_2025-*.dump
      
  • 验证与演练
    • 定期校验备份完整性(如 sha256sum)、抽样恢复演练、检查应用与数据库可用性。
    • 将备份与恢复步骤纳入变更流程,确保关键操作前已有可用备份。

五 监控 保留与迁移建议

  • 监控与告警
    • 记录 cron 输出与系统日志,监控备份目录容量与最近一次成功时间;失败即告警。
  • 保留与容量
    • 结合业务变更频率设置保留(如全量 2–4 周、增量 7–14 天),并配置容量阈值与自动清理。
  • 迁移与升级
    • 在迁移/升级前做一次全量备份;迁移后在隔离网络验证恢复流程,再切换生产流量。
  • 安全加固
    • 备份存储与传输加密、访问最小化、定期更换凭据;对云端/异地副本启用版本与对象锁(如支持)。
  • 版本风险提示
    • 再次强调:CentOS Stream 8 已停止维护,应尽快升级至 CentOS Stream 9 或迁移至 Rocky Linux 8/9,以降低安全与合规风险。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos stream8备份策略
本文地址: https://pptw.com/jishu/785647.html
CentOS系统PHPStorm版本选择建议 如何在CentOS上设置PHPStorm工作区

游客 回复需填写必要信息