欢迎来到程序员中文网!

首页 Linux Mysql C++ Python PHP JavaScript 资源下载 动态 开源推荐
我要投稿 投诉建议

Linux远程同步rsync

时间:2026年01月15日 07:01:56 浏览:0

服务端配置


1、安装 rsync 软件


yum -y install rsync

2、修改配置文件


vim /etc/rsyncd.conf
# 修改内容如下:
uid = rsync
gid = rsync
port = 873
fake super = yes
use chroot = no
max connections = 200
timeout = 600
ignore errors
read only = false
list = false
auth users = rsync_backup
secrets file = /etc/rsync.passwd
log file = /var/log/rsyncd.log
#####################################
[backup]
comment = welcome to backup!
path = /backup

3、创建系统用户


groupadd rsync -g 666
useradd rsync -u 666 -g 666 -M -s /sbin/nologin -r

4、创建密码文件


echo "rsync_backup:123456" > /etc/rsync.passwd
echo "rsync_zhou:123456" > /etc/rsync.serverpasswd

5、授权(必须为600)


chmod 600 /etc/rsync.passwd
chmod 600 /etc/rsync.serverpasswd

6、创建备份目录


mkdir /backup

7、目录授权


chown rsync.rsync /backup

8.关闭防火墙和selinux


systemctl disable --now firewalld
setenforce 0

9、启动rsync守护进程


systemctl start rsyncd

客户端配置


1、创建密码文件并授权


echo "123456" > /etc/rsync.passwd
chmod 600 /etc/rsync.passwd

2、连接服务端备份数据


[root@m01 ~]# rsync -avzP --password-file=/etc/rsync.passwd  ./* rsync_backup@172.16.1.00::backup

安装配置


# 修改内容如下:
uid = rsync
gid = rsync
port = 873
fake super = yes
use chroot = no
max connections = 200
timeout = 600
ignore errors
read only = false
list = false
auth users = rsync_zhou
secrets file = /etc/rsync.passwd
log file = /var/log/rsyncd.log
#####################################
[backup]
comment = welcome to backup!
path = /www/wwwback

echo "rsync_zhou:123456" > /etc/rsync.passwd

chown rsync.rsync /www/wwwback

本地同步目录
rsync -av /www/wwwlogs/ /www/wwwback/

远程服务器拉取到本地

rsync -av 58.218.00.00:/www/wwwroot /www/wwwback/

推送文件到远程服务器
rsync -avzP --password-file=/etc/rsync.passwd /www/wwwroot rsync_zhou@120.46.00.00::backup
rsync -avzP --delete --exclude=*.tpl.php --exclude=*.user.ini --exclude=*/data/logs --password-file=/etc/rsync.passwd /www/wwwroot rsync_zhou@120.46.00.00::backup

shell脚本


#!/bin/sh
echo "rsync 开始执行"
/usr/bin/rsync -avzP --delete --exclude=*.tpl.php --exclude=*.user.ini --exclude=*/data/logs --password-file=/etc/rsync.passwd /www/wwwroot rsync_zhou@120.46.00.00::backup
echo "rsync 执行完成"