Rocky Linux 下 rsync 典型场景配置与实战案例

案例一:本机定时增量备份

把 /etc、/home、/var/www 每天增量备份到 /backup,保留属性:

rsync -a --delete /etc/ /backup/etc/
rsync -a /home/ /backup/home/
rsync -a /var/www/ /backup/www/

案例二:跨主机 SSH 远程备份(最常用)

rsync -azP -e "ssh -p 22"   --exclude='*.tmp' --exclude='cache/'   /var/www/ root@backup.example.com:/backup/web/

案例三:配置 rsyncd 守护进程(内网分发)

Rocky 上编辑 /etc/rsyncd.conf

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

[web]
    path = /srv/rsync/web
    comment = Web mirror
    read only = yes
    list = yes
    auth users = mirror
    secrets file = /etc/rsyncd.secrets

密码文件(权限必须 600):

echo 'mirror:StrongPass123' | sudo tee /etc/rsyncd.secrets
sudo chmod 600 /etc/rsyncd.secrets
sudo useradd -r -s /sbin/nologin rsync 2>/dev/null
sudo mkdir -p /srv/rsync/web && sudo chown rsync:rsync /srv/rsync/web

启动并设置开机自启(systemd):

sudo systemctl enable --now rsyncd
sudo firewall-cmd --add-service=rsyncd --permanent
sudo firewall-cmd --reload

客户端拉取:

rsync -azP --password-file=/etc/client.pass mirror@server::web /local/web/

案例四:用 systemd timer 做定时同步(替代 cron)

Rocky 推荐用 systemd timer。建两个文件:

/etc/systemd/system/rsync-backup.service

[Unit]
Description=rsync web backup
[Service]
Type=oneshot
ExecStart=/usr/bin/rsync -azP -e "ssh -p 22" /var/www/ root@backup:/backup/web/

/etc/systemd/system/rsync-backup.timer

[Unit]
Description=Daily rsync backup at 03:00
[Timer]
OnCalendar=*-*-* 03:00:00
Persistent=true
[Install]
WantedBy=timers.target
sudo systemctl daemon-reload
sudo systemctl enable --now rsync-backup.timer

案例五:网站发布(本地构建 → 服务器)

rsync -azP --delete --exclude='.git' ./dist/ root@web:/var/www/html/

案例六:异地容灾(多目标)

for H in backup1 backup2; do
  rsync -azP --delete /data/ root@$H:/data/
done

Rocky Linux 安全建议(SELinux / 防火墙)

  • SELinux 数据上下文:rsyncd 共享目录要打标:sudo semanage fcontext -a -t rsync_data_t '/srv/rsync(/.*)?' 然后 sudo restorecon -Rv /srv/rsync
  • 最小暴露:公网只开必要端口,rsyncd 尽量绑定内网 IP,或用 SSH 模式替代 daemon。
  • 密钥登录:SSH 模式用密钥而非密码,禁用 root 直登,--bwlimit 防误伤业务。
  • 审计:开启 rsyncd 日志(log file),定期 review。

至此,Rocky Linux 下 rsync 从原理、安装、命令到守护进程/定时实战已全部覆盖,可直接用于生产备份与分发。

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容