rsync 数据同步工具
1.1什么是rsync?
Rsync是一款开源的,快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具。Rsync软件适用于unix/linux/windows等多种操作系统平台。rsync也可以用来删除,类似于rm命令。(rsync相当于cp,scp,rm,但优于其中每一个命令)
1.2两台服务器之间如何实现数据同步?
定时任务+备份数据。即crond+rsync
1.3rsync的分类
①本地间(类似于cp复制的方式)
例:rsync /etc/hosts /tmp --->注释:/etc/hosts是系统映射文件。
如果是目录,推送的时候就要加参数 -avz,这时目录下的文件都过去了;
如果只是想推送源目标有而目标没有的文件,只要在源目录的路径下加*就可以
----->例:rsync -avz /etc/hosts/* /tmp
增量同步:只复制目标没有的文件,目标文件有的不复制(以上就是增量复制)。
完全同步:让源和目标一样,删除目标多余的文件(在增量复制的同事还删除了目标多余 的东西)。
------>例:rsync -avz --delete /root/benet/ /tmp/ 只能针对两个目录,不能对单 文件。
②网络间(两台不同ip服务器间数据传输)
例:rsync -avz /root/benet root@192.168.10.110:/tmp/
------>注释:root@……中,root指对方的登录账号,192.168.10.110是对方的ip, 后面的/tmp是对方的目录路径。
scp功能演示:scp benet 192.168.10.110:/tmp,192前没有写登录账号,就默认以 root登录。
查看端口号的命令:netstat -antup | grep sshd
修改端口号:vim /etc/ssh/sshd_config,找到端口所在的行,在行下再起一行port 空格端口号,前面不加#。
0.0对方改变了端口号,就需要加ssh -p 端口号,来指定端口号。例:
如果修改端口,不能修改成1000以下的端口,1000以下的都是指定好端口。
③以sorcket进程的方式启动rsync server端(server端和客户端)。-----工作方式如图所示:各个服务器以定时任务的方式将文件传送到备份服务器socket进程监听的端口上。备份服务器将文件放到哪里和其他的服务器没关系,这一点和前面两个方式不同。前面两个都指定了同步的路径,而这个没有。
重点:
以socket(守护进程)的方式传输数据
服务的
服务的重点在于有清晰的思路。