插件窝 干货文章 细述Rsync在Centos上创建异地备份站点

细述Rsync在Centos上创建异地备份站点

backup 备份 Rsync 创建 263    来源:    2025-05-22

Rsync在CentOS上创建异地备份站点指南

Rsync是一个强大的文件同步工具,非常适合用于创建异地备份站点。下面是在CentOS系统上配置Rsync异地备份的详细步骤:

1. 安装Rsync

在源服务器和目标服务器上都安装rsync:

sudo yum install rsync -y

2. 配置目标服务器(备份服务器)

2.1 创建rsync配置文件

编辑或创建/etc/rsyncd.conf文件:

# /etc/rsyncd.conf

uid = root
gid = root
use chroot = yes
max connections = 4
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log

[backup]
    path = /data/backups
    comment = Backup Directory
    read only = no
    auth users = backupuser
    secrets file = /etc/rsyncd.secrets

2.2 创建认证文件

创建/etc/rsyncd.secrets文件:

echo "backupuser:yourpassword" | sudo tee /etc/rsyncd.secrets
sudo chmod 600 /etc/rsyncd.secrets

2.3 创建备份目录

sudo mkdir -p /data/backups
sudo chown -R root:root /data/backups

2.4 启动rsync守护进程

sudo systemctl enable rsyncd
sudo systemctl start rsyncd

3. 配置源服务器(被备份服务器)

3.1 创建认证文件

创建/etc/rsync.pass文件:

echo "yourpassword" | sudo tee /etc/rsync.pass
sudo chmod 600 /etc/rsync.pass

3.2 测试连接

rsync -avz --password-file=/etc/rsync.pass /path/to/source backupuser@backup-server-ip::backup

4. 设置自动化备份

4.1 创建备份脚本

创建/usr/local/bin/backup.sh

#!/bin/bash

SOURCE_DIR="/path/to/source"
BACKUP_SERVER="backup-server-ip"
BACKUP_USER="backupuser"
PASS_FILE="/etc/rsync.pass"
LOG_FILE="/var/log/backup.log"

echo "Backup started at $(date)" >> $LOG_FILE

rsync -avz --delete --password-file=$PASS_FILE $SOURCE_DIR $BACKUP_USER@$BACKUP_SERVER::backup >> $LOG_FILE 2>&1

echo "Backup completed at $(date)" >> $LOG_FILE

4.2 设置可执行权限

sudo chmod +x /usr/local/bin/backup.sh

4.3 设置cron定时任务

sudo crontab -e

添加以下内容(例如每天凌晨2点执行):

0 2 * * * /usr/local/bin/backup.sh

5. 安全增强措施

  1. 使用SSH隧道:更安全的方式是使用SSH作为传输层

    rsync -avz -e ssh /path/to/source user@backup-server:/path/to/backup
    
  2. 防火墙配置:只允许源服务器IP访问备份服务器的873端口

    sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="source-server-ip" port protocol="tcp" port="873" accept'
    sudo firewall-cmd --reload
    
  3. 使用VPN:在两地服务器间建立VPN通道

6. 监控和日志

  1. 定期检查/var/log/rsyncd.log/var/log/backup.log
  2. 设置邮件通知脚本执行结果
  3. 定期验证备份的完整性和可恢复性

7. 高级选项

  1. 增量备份:使用--link-dest参数创建硬链接增量备份
  2. 带宽限制:使用--bwlimit限制带宽使用
  3. 排除文件:使用--exclude排除不需要备份的文件
  4. 压缩传输:使用-z选项减少传输数据量

通过以上步骤,您可以在CentOS系统上建立一个可靠的异地备份解决方案。根据实际需求调整配置参数,并定期测试恢复流程以确保备份的有效性。