linux rsync文件夹增量同步


就是说用rsync去同步一个很大的文件夹几十G,第一次的时候会同步几十G的数据,然后又更新/删除的时候只需要同步跟新、删除的文件)用的是xxx算法,这不是我们需要管的,大多说情况我们需要知道怎么用就行了

问题1:用rsync同步文件夹,我的主机用的是ssh带密码登录的,可以用吗?
回答:用rsync同部文件、文件夹,不需要知道你的ssh key,也不需要知道你登录账号密码,就像QQ一样,它的运行不需要知道你的电脑账号密码,你只要开着机,把软件运行,然后设置你rsync  ( QQ ) 密码不要被别人知道就行了

问题2:用rsync同步文件,设置的密码跟系统的密码有关系吗?
回答:同上,你在开机的状态下,启动rsync这个软件,然后设置相应的参数,它就会把文件/文件夹共享出去,别人通过你的ip密码就能访问到相应的文件/文件夹

linux生产服务器的文件定时同步到备用的服务器(ps我们的代码其实已经走git了,只是一些图片文件和配置文件是没有用版本控制的,其实嘛我觉得图片文件夹也最好进入版本控制吧,只是仓库大一点而已)

生产服务器ip :78.159.xxx.238 (下面称为服务器)

从服务器ip :78.159.xxx.209    (下面成为客户端)

备份生产服务器的 /home/html 文件夹到从服务器   /home/backup_html文件夹

1.安装rsync  :  yum -y install  rsync   

记得开启要873端口哦,rsync默认是用这个端口的

查看有没有开启873端口:telnet 78.159.xxx.238 873 如果没有提示连接错误

配置rsync服务端 : vim  /etc/rsyncd.conf

# /etc/rsyncd: configuration file for rsync daemon mode
# See rsyncd.conf man page for more options.
# configuration example:
 
uid = root
gid = root
use chroot = yes
max connections = 4
read only = yes
# pid file = /var/run/rsyncd.pid
# exclude = lost+found/
# transfer logging = yes
timeout = 1800
# ignore nonreadable = yes
# dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
 
[backup]
path=/home/html
ignore errors
auth users = root
secrets file = /etc/rsyncd.pass
 

新建编辑密码文件   vim /etc/rsyncd.pass   输入你要的密码:格式root:123456

注意这里的密码跟你服务器的root密码没有关系的,你把873端口开放出来了,然后在别的机器就可以通过你这个密码和端口访问到你设置的文件夹(例如这里的:/home/html ),别人知道我的ip用123456这个密码,就可以访问到我的/home/html这个目录不过我只设置了它能读取,还是不能修改我的文件夹的

给密码文件设置权限:chmod 600 /etc/rsyncd.pass    (注意是600权限哦,其他权限听说不行,自行测试)

启动rsyncd服务 :service rsyncd start     

如果你新增了文件夹需要重启:service rsyncd restart 

查看进程占用端口:netstat -tunlp  (启动rsyncd服务后会显示873端口被rsync占用)

 

到这里服务端的配置已经完成了,下面配置rsync的客户端

rsync客户端:同样是安装rsync:yum -y install rsync

启动rsyncd服务 :service rsyncd start 

新建编辑密码文件   vim /etc/rsyncd.pass   输入你要的密码:123456  (不要root: 不然连接的时候是无法连接哦)

   同样给客户端密码文件权限:chmod 600 /etc/rsyncd.pass

在客户端执行:

rsync -avzP --delete --progress --password-file=/etc/rsyncd.pass root@78.159.xxx.238::backup /home/backup_html

参数解析

78.159.xxx.238是服务端的ip  

/home/backup_html是你想要把服务端的文件同步到这台机的那个位置

::backup    backup 是服务端那边的认证的模块名(你在服务端叫什么这边就叫什么)

--password-file   路径是我们刚才新建的密码文件

-a 参数,相当于-rlptgoD(-r 是递归 -l 是链接文件,意思是拷贝链接文件;-p 表示保持文件原有权限;-t 保持文件原有时间;-g 保持文件原有用户组;-o 保持文件原有属主;-D 相当于块设备文件);

-z 传输时压缩;

-P 传输进度;

-v 传输时的进度等信息;

--progress 指显示

--delete 指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致

 

然后设置定时任务多久执行一次更新,rsync它的算法文件夹的内容没有改变不用更新的,就是增量更新

设置脚本执行的时间:crontab -e,添加如下内容

vim /etc/rsyncd.sh   

把这段东西扔进去:/usr/bin/rsync -avzP --delete --progress --password-file=/etc/rsyncd.pass root@78.159.xxx.238::backup /home/backup_html

chmod  755 /etc/rsyncd.sh

*/1 * * * * sh /etc/rsyncd.sh #第1分钟执行一次同步;
————————————————
版权声明:本文为CSDN博主「或非与」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_27517377/article/details/105147583

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
IncreSync是多文件夹批量处理的文件增量备份软件,它支持两种同步方式,在线同步和离线同步。在线同步是两台联网机器之间的文件同步,通过共享访问另一台电脑;离线同步是通过U盘等第三方介质进行两台电脑之间的文件同步。IncreSync同步可以是单向同步或双向同步,可以配置是否同步新增、修改、删除和隐藏的文件,以及通过通配符,过滤部分文件。 在线同步时,连接好两台电脑,点击联机同步就可以同步文件。 离线同步时,将U盘插入源电脑,运行程序,点击源端同步将文件同步到U盘,然后将U盘插入目的电脑,点击目的端同步将文件同步到目的目录。 详细的使用方法,请参考系统的帮助文档。 文件同步示意图: 同步方向 按钮 联机同步 移动存储同步 ----------------------------------------------------- |源端同步 | |源端-->U盘 | | | 单向同步 |目的端同步 | |U盘-->目的端 | | | |联机同步 |源端-->目的端 | ----------------------------------------------------- |源端同步 | |U盘-->源端 | | |源端-->U盘 | | | 双向同步 |目的端同步 | |U盘-->目的端 | | |目的端-->U盘 | | | |联机同步 |源端-->目的端 | | |目的端-->源端 | ----------------------------------------------------- 注: 1、源端-->目的端 代表文件从源端同步到目的端,其他的依次类推。 2、在移动存储同步时,需要将本程序拷到U盘等第三方介质,因为临时文件会存储在程序的临时文件夹里。 3、本系统可以通过任务调度,配置为自动同步方式,需要请联系zhayaqi@hotmail.com. 如果你对系统有什么意见或建议,请您发送邮件至zhayaqi@hotmail.com,非常感谢,期待您的反馈!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值