程序员我用 Linux

文件同步rsync

2018-03-14  本文已影响0人  枫凝_a19e

linux下的rsync服务端配置和window下rsync配置

1. linux的服务端配置如下:

安装:

yum install rsync

配置启动文件:

#修改配置文件
vim /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
 port = 873
 read only = no
 exclude = lost+found/
 transfer logging = yes 
 timeout = 900 
 ignore nonreadable = yes 
 dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2

[wwwlogs]
#需要同步的目录
path = /data/wwwlogs
##表示出现错误忽略错误
ignore errors
read only=yes    #表示可以pull 
write only=no      #表示可以push
##表示网络权限可写(本地控制真正可写)
##这里设置IP或让不让同步
list = false
##指定允许的网段
hosts allow = *
##拒绝链接的地址,以下表示没有拒绝的链接。
#hosts deny = 0.0.0.0/32
##不要动的东西(默认情况)
##虚拟用户
auth users = rsyncuser
##虚拟用户的密码文件
secrets file = /etc/rsync.password

配置密码文件

vim /etc/rsync.password
#添加用户名和密码(ps这个不是linux下的用户,只是rsysc验证用的)
 rsyncuser:123456

设置开机启动和启动rsync服务

systemctl start rsyncd.service #启动服务
systemctl enable rsyncd.service #开机启动服务

2. windown下rsync的客户端配置

官网:
https://www.itefix.net/cwrsync

下载链接
cwRsync - Rsync for Windows

解压后的目录结构如下:

image

配置wwwlog.bat内容如下:

rsync.exe --port=873  -avzrtopg --progress --delete --password-file=/cygdrive/C/Users/54568/Desktop/cwRsync_5.5.0_x86_Free/bin/pwd  rsyncuser@192.168.33.10::wwwlogs /cygdrive/d/test  

window下命令解释:

 --port=873 # 端口
 -vzrtopg --progress # 显示同步过程详细信息
 --delete # 从客户端目录中删除与服务端目录中不同的数据,保证两边数据完全一致
 /cygwin/d/test # Window下目录d:\test
 wwwlogs # 服务端配置文件rsyncd.conf文件中定义的模块名称
 192.168.33.10 # Rsync服务端IP地址

保存后双击wwwlog.bat

image image

我们常用rsync有六种不同的工作模式:

  1. 拷贝本地文件。当SRC和DES路径信息都不包含有单个冒号":"分隔符时就启动这种工作模式。如:rsync -a /data /backup
  2. 使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号":"分隔符时启动该模式。如:rsync -avz *.c foo:src
  3. 使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号":"分隔符时启动该模式。如:rsync -avz foo:src/bar /data
  4. 从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。如:rsync -av root@192.168.78.192::www /databack
  5. 从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。如:rsync -av /databack root@192.168.78.192::www
  6. 列远程机的文件列表。这类似于rsync传输,不过只要在命令中省略掉本地机信息即可。如:rsync -v rsync://192.168.78.192/www

参考资源:

github

https://github.com/axkibe/lsyncd

语法:

http://man.linuxde.net/rsync

客户端

http://qiaomiao.blog.51cto.com/484197/1569611

服务端:

http://blog.csdn.net/qq_33324608/article/details/55259448
http://www.cnblogs.com/zhangeamon/p/5724910.html

上一篇下一篇

猜你喜欢

热点阅读