rsync同步

rsync 远程同步

格式:

  • 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

-v:显示详细信息

-a:以递归方式传输文件,并保持所有属性;等同于-rlpogtD,-a选项后可跟--no-OPTION参数,用于减去某个选项(一个),如-a --no-l

-r:递归模式,即传输时保持目录结构

-l:传输软链接文件,默认不传输

-L:当SRC包含软链接文件时,传输软链接文件所指向目标文件

-H:保留硬链接,默认使用不同的inode存放

-p:保持文件权限

-o:保持文件所属者信息

-g:保持文件所属组信息

-t:保持文件时间信息

-D:保持设备文件信息

--delete:删除DST中SRC里没有的文件

--exclude=PATTERN:传输时排除指定文件,可使用通配符

-P|--progress:显示传输进度

-u:当DST中的文件比SRC中的文件还新时,不进行覆盖

-z:压缩传输

-e "ssh -p xxx":使用指定端口,或"--rsh=ssh -p xxx"

-R:创建级联目录

--file-from=file-path:根据指定的文件列表文档进行同步

--include=PATTERN --exclude="*": 只同步指定类型的文件

diff file1 file2:对比2个文件的差异

同步目录下的文件时,请一定记得加/


rsync同步之ssh隧道方式

yum install -y openssh-clients    //需要安装openssh-clients包

如果要实现自动化同步(无须输入密码), 就得使用密钥认证,在创建密钥时,不设置密钥密码。

这种方式就是使用ssh方式连接到远端主机,然后启动rsync进程,以使双方能够进行rsync同步,同步完成后关闭rsync进程。


rsync后台服务模式

--port:指定连接的服务器端口,默认873

rsync  HOST::    //列出list=yes的模块名,不需要用户认证

rsync --daemon --confg=/etc/rsyncd.conf    //启动rsync守护进程,并指定配置文件

如果要实现自动化同步(无须输入密码),有2种方法,在rsync配置文件中不指定auth users和secrets file,或者使用--password-file=path参数;配置文件更改后无须重启rsync服务。

注:rsync服务端的认证文件和客户端的密码文件的权限要设置为600.

这种方式就是启用rsync的守护进程(daemon),打开一个端口(默认873)并侦听它,等待rsync客户端发起连接请求。


你可能感兴趣的:(linux,同步,rsync)