你的位置:首页 > 操作系统

[操作系统]linux 远程同步数据工具rsync (1)


rsync 远程同步数据工具,是linux下的数据备份工具rsync(remote sync 远程同步)

特点:在本地同步数据(类似于cp,但是有不同于远程scp),它会先判断已经存在的数据和远程数据有什么不同,不同时才会把不同的部分覆盖掉

rsync 使用格式

1.rysnc (命令格式)的格式(需要输入远程root密码)

注意:两个机器之间要使用这rsync命令同步文件时,是配合ssh同时使用,ssh可以ssh-keygen -t rsa 重新生成一对秘钥。公钥与私钥。

如果将主机A的文件同步到主机B上,可以在可以主机A上以ssh-keygen -t rsa 重新生成一对秘钥 公钥:id_rsa.pub放在本地主机A,私钥id_rsa在远程主机B上。

如果主机的A的私钥id_rsa 与远程主机B的id_rsa不是生成的一对。输入密码也会包提示:Server refused our key”
Server refused our key”

解决方法:可以用ssh-keygen -t rsa 重新生成一对秘钥。
rsync [OPTION]... SRC DEST        (本地到本地)
rsync [OPTION]... SRC [USER@]HOST:DEST(本地远程)
rsync [OPTION]... [USER@]HOST:SRC DEST (远程到本地)
rsync [OPTION]... [USER@]HOST::SRC DEST (远程到本地)
rsync [OPTION]... SRC [USER@]HOST::DEST (本地远程)

-a 归档模式,表示以递归方式传输文件,并保持所有属性,等同于-rlptgoD, -a选项后面可以跟一个 --no-OPTION 这个表示关闭-rlptgoD中的某一个例如 -a--no-l 等同于-rptgoD

-r 对子目录以递归模式处理,主要是针对目录来说的,如果单独传一个文件不需要加-r,但是传输的是目录必须加-r选项

-v 打印一些信息出来,比如速率,文件数量等

-l 保留软链结

-L 向对待常规文件一样处理软链结,如果是SRC中有软连接文件,则加上该选项后将会把软连接指向的目标文件拷贝到DST

-p 保持文件权限

-o 保持文件属主信息

-g 保持文件属组信息

-D 保持设备文件信息

-t 保持文件时间信息

--delete 删除那些DST中SRC没有的文件

--exclude=PATTERN 指定排除不需要传输的文件,等号后面跟文件名,可以是万用字符模式(如*.txt)

--progress 在同步的过程中可以看到同步的过程状态,比如统计要同步的文件数量、同步的文件传输速度等等

-u 加上这个选项后将会把DST中比SRC还新的文件排除掉,不会覆盖

常用的选项页仅仅那么几个: (-a -v --delete --exclude --no-OPTION)

(1)在本地用使用rsync 备份目录的时候,记得在目录后面带上/
mkdir test1
cd  test1
touch 1.txt 2.txt

rsync  -av test1/ test2/
#不然的话 test/目录回到新生成的test2/里面去。

(2)--no-OPTION

rsync -av --no-l   # 去除软链接

(3)选项-L        #拷贝把软链接的源文件也考过来代替软链接

主机A 192.168.176.252

主机B  192.168.176.253

要求将主机的/root/install.log 同步到主机/tmp目录下

rsync  -avL  /root/install.log root@192.168.176.253:/tmp

提示输入主机B用户root密码