rsync工具介绍
rsync是一个Linux下数据备份的工具,可以实现增量的拷贝,不仅可以本地同步数据,而且还可以远程同步数据。使用rsync命令之前,先安装yum install -y rsync
rsync -av /etc/passwd /tmp/1.txt ,把/etc/passwd文件拷贝到/tmp下并改名为1.txt
rsync远程同步,格式为用户名@IP加上:,输入密码就可以了
rsync格式
rsync [OPTION] … SRC DEST,SRC表示源目录,DEST表示目标目录,或者是目标文件
rsync [OPTION] … SRC [user@]host:DEST,拷贝到远程的服务器上去,user@省略,默认当前终端的用户
rsync [OPTION] … [user@]host:SRC DEST,先写远程的机器/目录,然后拷贝到本地的目录下
rsync [OPTION] … SRC [user@]host::DEST,两个冒号,它可以是目标,可以是源
rsync [OPTION] … [user@]host::SRC DEST
rsync常用选项
- -a 等同于-rtplgoD
- -r 同步目录时要加上,类似cp时的-r选项
- -v visual可视化,同步时显示一些信息,让我们知道同步的过程
- -l 保留软连接
- -L 加上该选项后,同步软链接时会把源文件给同步
- -p 保持文件的权限属性
- -o 保持文件的属主
- -g 保持文件的属组
- -D 保持设备文件信息
- -t 保持文件的时间属性
- --delete 删除DEST中SRC没有的文件
- --exclude 过滤指定文件,如--exclude “logs”会把文件名包含logs的文件或者目录过滤掉,不同步
- -P 显示同步过程,比如速率,比-v更加详细
- -u update,加上该选项后,如果DEST中的文件比SRC新,则不同步
- -z zip,传输时压缩,节省带宽,增加速度
使用-a选项
选取111作为目标目录
rsync -av /root/111 /tmp/111_dest,将/root下的111目录同步到/tmp下,并改名111_dest。建议在使用rsync备份目录时,要养成加斜杠/的习惯。
使用-L选项
加L会把l的含义覆盖掉,把软链接所指向的源文件给拷贝到目标目录下
创建软链接文件
再同步下
查看/tmp/111_dest/aming3文件内容
使用--delete选项
删除目标目录下源目录没有的文件
在目标目录下/tmp/111_dest创建新的文件new.txt
删除新建的文件new.txt
使用--exclude选项
过滤点所有含.txt文件
支持多次过滤文件,在过滤点以aming开头的文件
使用-P选项
先删除/tmp/111_dest/*文件,# !rm,然后观察rsync同步过程状态
使用-u选项
不加u,目标目录下的4913文件会被覆盖掉
加上u,会保留4913不被覆盖掉
rsync通过ssh同步
打开两个虚拟机,两者可以通信,其中一个IP是192.168.133.130,另外一个IP192.168.133.132,两个事先都要安装好rsync包,yum install -y rsync
然后开始同步文件(推文件),输入root密码
在第二台虚拟机上查看同步的文件
也可以第二台虚拟机的文件传到本机上(拉文件)
指定端口传输文件,-e "ssh -p 22"
指定端口连接虚拟机,ssh -p 22 192.168.133.132