在CentOS Stream 8上进行备份和恢复是确保系统数据安全的重要步骤。以下是一些常用的备份和恢复策略:
使用 rsync
和 tar
命令备份重要目录:
sudo mkdir /backups/centos_stream
/etc
目录:sudo rsync -avz --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lostfound"} /etc/ /backups/centos_stream/
/var
目录:sudo rsync -avz --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lostfound"} /var/ /backups/centos_stream/
/etc
和 /var
目录的归档文件:sudo tar -czvf /backups/centos_stream/centos_stream_backup.tar.gz /etc/ /var/
使用 Syncthing
实现实时数据同步备份:
Syncthing
:wget https://github.com/syncthing/syncthing/releases/download/v1.23.1/syncthing-linux-amd64-v1.23.1.tar.gz
tar zxf syncthing-linux-amd64-v1.23.1.tar.gz
cp syncthing /usr/local/bin
Syncthing
:
编辑 /root/.config/syncthing/config.xml
,将 address127.0.0.1:8384/address
改为 address0.0.0.0:8384/address
。Syncthing
服务:sudo systemctl restart syncthing@root.service
Syncthing
开机自启动:
复制服务文件到系统服务目录,修改服务文件中的 ExecStart
路径,重载 systemd
配置并重启服务。使用 cron
任务定期执行备份:
backup_script.sh
):#!/bin/bash
sudo mkdir -p /backups/centos_stream/$(date %Y%m%d)
sudo rsync -avz --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lostfound"} /etc/ /backups/centos_stream/$(date %Y%m%d)/
sudo rsync -avz --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lostfound"} /var/ /backups/centos_stream/$(date %Y%m%d)/
sudo tar -czvf /backups/centos_stream/$(date %Y%m%d)/centos_stream_backup.tar.gz /etc/ /var/
cron
任务:crontab -e
添加以下行以每天凌晨2点执行备份脚本:0 2 * * * /path/to/your/backup_script.sh
恢复整个系统:
sudo tar -xzvf /backups/centos_stream/centos_stream_backup.tar.gz -C /
恢复特定目录:
rsync
命令将备份数据还原到原始位置:sudo rsync -avz --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lostfound"} /backups/centos_stream/backup_directory/ /
通过上述备份和恢复策略,您可以在 CentOS Stream 8 中有效地管理数据,确保系统在需要时能够迅速恢复。