记一次简单的 rsync 使用

rsync(remote synchronize)是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机之间的文件。也可以使用 rsync 同步本地硬盘中的不同目录。

我只做了手动同步,并没有进行推送处理,有兴趣的朋友可参考文末的链接。

服务端配置:

配置中留意,用于设置客户端连接的用户名和密码,且保留该文件属于 root 组及用户,且权限为 600。

secrets file = /etc/rsyncd.password

密码文件格式(一行一个):
用户名:密码

# 增加项目(只读)
[sync1]
path = /tmp/sync1 # 允许同步的目录
auth users = test # 允许连接的用户
read only = true # 只读
comment = this is sync1 rsync # 注释

# 增加项目(允许读写)
[test]
path = /tmp/test # 允许同步的目录
auth users = test # 允许连接的用户
read only = false # 非只读,即允许写入,默认为,只读
comment = this is test rsync # 注释

更多配置信息,可参考文末的链接。

客户端同步时:

rsync -vzrtopg --progress --delete --password-file=/etc/rsyncd_www.password test@domain.com::sync1 /tmp/test

命令解释:

-vzrtopg # 同步选项 v显示更多信息 z使用压缩 r递归同步文件夹 t保持文件时间 o保持文件所有者信息 p保持文件权限 g保持文件所在组

–progress # 显示进度

–password-file # 指定密码文件(只需要填写密码即可)

test@domain.com::sync1 # 以 test 用户名连接 domain.com 站的同步服务器,同步的项目为 sync1

/tmp/test # 并存储到本地目录

同理推送时:

rsync -avzP /www/test.log --password-file=/etc/rsyncd_test.password test@domain.com::test

命令解释:

-avzP # 推送选项 a 递归方式保持文件属性等信息 v显示更多信息 z使用压缩 P保留那些因故没有完全传输的文件且在传输时显示传输过程

–password-file # 指定密码文件(只需要填写密码即可)

test@domain.com::test # 以 test 用户名连接 domain.com 站的同步服务器,同步的项目为 test

更多的信息,参见:

Rsync 故障排查整理

rsync常见问题及解决办法收集

rsync用法详细解释

CentOS6 下rsync服务器配置

CentOS 7 用户账户配置

Linux下rsync的安装及简单使用

rsync 官网

发表评论

电子邮件地址不会被公开。 必填项已用*标注