rsync两台服务器文件同步

首先安装Rsync

yum rsync


rsync客户端和服务器端都是同一个执行文件,只不过加的参数不一样。

例如,服务器A是192.168.8.188,服务器B是10.100.1.38,例如将38上的 /home/wuxin/web/bbs/data/attachment/目录下的文件同步到192.168.8.188的/var/www/bbs/data/attachment/目录下,则188上运行rsync作为服务器端,38做为客户端。

首先把192.168.8.188服务器端的配置文件建立起来。

vi /etc/rsyncd.conf 内容如下:

uid = nobody
gid = nobody

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

[bbs]
path = /var/www/bbs/data/attachment/
ignore errors
read only = false
list = false
hosts allow = 10.100.1.38/24
hosts deny = 0.0.0.0/32
auth users = backup
secrets file = /etc/rsyncd.pwd
uid=0
gid=0


找个配置文件中,uid和gid指明了运行身份,chroot表示连接后自动切换目录,read only=false是允许别的客户端向本机的服务器端上传。host allow和deny是限制连接地址。auth user是认证用户名,secrets file = /etc/rsyncd.pwd是表示认证用户名的时候到这里读取密码。

接下来编辑密码文件:

vi/etc/rsyncd.pwdbackup:123456 #设置密码文件权限700:(权限不对会登陆不上)
chmod700 /etc/rsyncd.pwd#然后启动rsync服务:
/usr/bin/rsync--daemon #把rsync加入自动启动脚本,开机后自动启动:
echo"/usr/bin/rsync --daemon" >> /etc/rc.d/rc.local
#注意一下iptables必须允许rsync的873端口被连接。


现在到10.100.1.38的客户端上,命令格式如下:
rsync [-参数] 源地址路径 目标地址路径
例如将101上的/www/downloads/new目录下的文件同步到192.168.8.188的/www/downloads目录中。
则创建执行脚本:


vi /shell/rsync.sh

rsync -vrtL --progress  /home/wuxin/web/bbs/data/attachment/* backup@192.168.8.188::bbs --password-file=/home/wuxin/shell/rsync.pwd

注backup@192.168.8.188::bbs   bbs是服务端的rsyncd.conf [bbs]节点


-v参数表示显示输出结果,r表示保持属性,t表示保持时间,L表示软link视作普通文件。
创建客户端的密码文件:
vi /shell/rsync.pwd

123456


注意:客户端的密码脚本不带用户名。
设置密码文件权限700:(权限不对会登陆不上)

chmod /root/rsync.pwd#将客户端脚本加入定期任务:
echo "00 3 * * * root /usr/prima/etc/rsync.sh">> /etc/crontab#则每天凌晨3点运行同步


现在可以直接运行 /shell/rsync.sh 观看效果。

简单的rsync配置完成。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值