您的位置:首页 > 手游攻略 > Linux-Rsync两台机器文件数据同步传输

Linux-Rsync两台机器文件数据同步传输

作者:互联网  时间: 2026-08-08 14:34:05  

rsync 服务器是指以 deamon 方式运行 rsync 服务的服务器,需要打开 rsync deamon 和启动 xinetd 服务。默认端口873。rsync 客户端是发起 rsync 连接的服务器,安装rsync即可。rsync 客户端发起连接后,rsync 服务器会检查 rsync 客户端提交 rsync 服务器内建的户名和密码是否正确,如果通过认证检测,则开始文件传输,传输的过程是按要求先比对文件的大小、属性、权限、MD5值等信息,如果两端文件信息不一致,则按要求同步文件的区别块。

Linux-Rsync两台机器文件数据同步传输

安装:wget https://xxx/pub/rsync/rsync-3.1.2.tar.gz、tar -xzf rsync-3.1.2.tar.gzcd rsync-3.1.2./configure --prefix=/usr/local/rsyncdmake && make install服务器端配置:mkdir /etc/rsyncdtouch /etc/rsyncd/rsyncd.conftouch /etc/rsyncd/rsyncd.secretstouch /etc/rsyncd/rsyncd.motdchmod 600 /etc/rsyncd/rsyncd.secretsvim /etc/rsyncd/rsyncd.conf #进程 pid 文件所在位置pid file = /var/run/rsyncd.pid#指定监听端口,默认是873,可以自己指定port = 873 #服务器监听的IP地址,可省略address = 192.168.1.171 #守护进程所属的uid,默认是nobody,可能会碰到文件或目录权限问题,此处偷懒用的 rootuid = root#守护进程的gid gid = root #chroot,即改变程序执行时所参考的根目录位置,在传输文件之前,服务器守护程序在将chroot 到文件系统中的目录中#这样做的好处是可能保护系统被安装漏洞侵袭的可能。缺点是需要超级用户权限。另外对符号链接文件,将会排除在外#也就是说,你在 rsync服务器上,如果有符号链接,你在备份服务器上运行客户端的同步数据时,只会把符号链接名同步下来,并不会同步符号链接的内容use chroot = yes#只读选择,只让客户端从服务器上读取文件read only = no#只写选择,只让客户端到服务器上写入 write only = yes #允许访问的IP,可以指定单个IP,也可以指定整个网段,能提高安全性。格式是 ip 与 ip 之间、ip 和网段之间、网段和网段之间要用空格隔开;hosts allow = 192.168.1.0/255.255.255.0 10.0.1.0/255.255.255.0#客户端最多连接数 max connections = 5 #当用户登录时会看到这个信息。比如显示当前时间、公告等motd file = /etc/rsyncd/rsyncd.motd#rsync 服务器的日志;log file = /var/log/rsync.log #记录传输文件的日志transfer logging = yes #日志格式log format = %t %a %m %f %b#日志级别 syslog facility = local3 #通过该选项可以覆盖客户指定的IP超时时间。可以确保rsync服务器不会永远等待一个崩溃的客户端。超时单位为秒钟,0表示没有超时定义,这也是默认值。对于匿名rsync服务器来说,一个理想的数字是600。timeout = 300#模块定义#每个模块都要以[name]形式。这个名字就是在 rsync 客户端看到的名字。#但是服务器真正同步的数据是通过 path 指定的。可以依次创建多个模块。#每个模块要指定认证用户、密码文件,但排除并不是必须的。[ logs ] #模块名,以下配置都属于此模块#文件目录所在位置path = /var/log#当查看服务器上提供了哪些目录时是否列出来,no比较安全 list = no#忽略I/O错误 ignore errors #指定由空格或逗号分隔的用户名列表,只有这些用户才允许连接该模块。这里的用户和系统用户没有任何关系,是 rsyncd.secrets 中的用户名!#如果"auth users"被设置,那么客户端发出对该模块的连接请求以后会被rsync请求challenged进行验证身份。#这里使用的 challenge/response 认证协议。#用户的名和密码以明文方式存放在"secrets file"选项指定的文件中。默认情况下无需密码就可以连接模块(也就是匿名方式)。auth users = zhangzksecrets file = /etc/rsyncd/rsyncd.secrets #密码文件exclude = error_log httpd.pid #忽略的文件或目录comment this is my log #本模块注释,可选vim /etc/rsyncd/rsyncd.secrets 密码文件,用户名称与密码以冒号分隔,多个用户名和密码可以多行zhangzk:239fjdalk@893246dasaATDFBSadzhangab:669fjbalk@8sadf$3246dasaATDFBSafvim /etc/rsyncd/rsyncd.motdWelcome to use rsync
服务器端启动:1.直接使用 --daemon 参数 /usr/local/rsync/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf2.xinet方式    1).修改 /etc/services,加入以下内容,如果已经有可以不加,如果端口改了,需要改掉 873 端口为指定端口rsync  873/tcp  # rsync rsync  873/udp  # rsync2).修改 /etc/xinetd.d/rsync,主要是要打开rsync這個daemon, 一旦有rsync client要连接時, xinetd会把它转介給 rsyncd(port 873)。service rsync{disable = nosocket_type = streamwait= nouser= rootserver= /usr/bin/rsyncserver_args = --daemon --config=/etc/rsyncd/rsynd.conflog_on_failure = USERID}重启 xinetdservice xinetd restart
客户端配置:创建密码文件,/etc/rsyncd/rsyncd.pass,并修改为 600 权限touch /etc/rsyncd/rsyncd.passchmod 600 /etc/rsyncd/rsyncd.pass  /etc/rsyncd/rsyncd.pass 其内密码需要和服务端内/etc/rsyncd/rsyncd.pass指定用户的密码保持一致239fjdalk@893246dasaATDFBSad七、客户端向服务端传输文件,如果是 873 端口,可以把 --port 去掉rsync -vzrtopg --delete --progress /var/log/access.log [email protected]::logs--password-file=/etc/rsyncd/rsyncd.pass --port=873  若有需要也可以从服务端拉取文件,需要把服务器的 /etc/rsyncd/rsyncd.conf 中的 write only = yes 给去掉#拉取整个目录rsync -vzrtopg --delete --progress--password-file=/etc/rsyncd/rsyncd.pass --port=873 [email protected]::logs/var/log #拉取单个文件rsync -vzrtopg --delete --progress--password-file=/etc/rsyncd/rsyncd.pass --port=873 [email protected]::logs/a.log/var/log

最新游戏

更多

Copyright©2010-2019. All rights reserved | 波波三国游戏官网|[email protected]

备案编号:湘ICP备2022015115号-4