温馨提示×

CentOS Overlay如何备份数据

小樊
57
2025-07-14 21:36:55
栏目: 智能运维

CentOS Overlay 数据备份可以通过以下几种方法实现:

使用 tar 命令进行备份

  • 创建整个系统的备份镜像

    tar -czvf backup.tar.gz --exclude=/proc --exclude=/lostfound --exclude=/mnt --exclude=/sys / 

    这个命令将整个系统备份到一个tar归档文件中,排除了 /proc/lostfound/mnt/sys 目录,这些目录通常包含临时文件或不需要备份的数据。

  • 使用 rsync 命令进行增量备份

    • 首次全量备份

      rsync -avz --delete /source/directory/ /destination/directory/ 
    • 后续增量备份

      rsync -avz --delete --link-dest=/destination/directory/ /source/directory/ 

    rsync 是一个强大的文件同步工具,可以实现文件的增量备份,首次全量备份后,后续备份只需同步变化的部分。

  • 使用 cron 定时任务自动执行备份

    编辑 crontab 文件添加定时任务,例如每天凌晨1点执行备份:

    crontab -e 

    添加如下行:

    0 1 * * * /path/to/backup_script.sh 

恢复系统

  1. 将备份文件拷贝到分区的根目录下:

    scp backup.tar.gz root@目的机器IP:/ 
  2. 在目的机器上恢复系统:

    tar xvpfz backup.tar.gz -C / 

    如果备份文件是使用 bzip2 压缩的,使用:

    tar xvpjf backup.tar.bz2 -C / 
  3. 重建被排除的目录:

    mkdir /proc /lostfound /mnt /sys 
  4. 恢复系统的 SELinux 类型:

    restorecon -Rv / 
  5. 最后重启系统以应用恢复:

    reboot 

备份CentOS Overlay配置

  • 备份Docker配置文件

    sudo cp /etc/docker/daemon.json /etc/docker/daemon.json.bak 
  • 备份Docker镜像和容器

    • 备份所有镜像:

      sudo docker save -o /backup/docker-images.tar $(sudo docker images -aq) 
    • 备份所有容器:

      sudo docker commit $(sudo docker ps -aq) backup-containers sudo docker save backup-containers /backup/containers.tar 
  • 备份Docker卷

    列出所有卷:

    sudo docker volume ls 

    备份卷信息:

    sudo docker volume inspect volume_name > /backup/volume-volume_name.json 
  • 备份Docker网络

    列出所有网络:

    sudo docker network ls 

    备份网络配置:

    sudo docker network inspect network_name > /backup/network-network_name.json 
  • 备份Docker Swarm配置(如果使用Swarm模式)

    备份Swarm配置:

    sudo docker info > /backup/docker-swarm-info.txt 
  • 备份系统日志

    sudo journalctl -u docker.service > /backup/docker-logs.log 
  • 备份其他相关配置文件

    根据具体需求,可能还需要备份其他相关的配置文件,例如 /etc/sysconfig/docker/etc/default/docker/etc/cron.d/docker

通过上述步骤,你可以在 CentOS 系统上实现 Overlay 备份与恢复。根据你的具体需求,可以选择全量备份或增量备份,并利用 cron 定时任务自动化备份过程。

0