rsync 远程同步node
格式:服务器
rsync [OPTION]... SRC DEST ssh
rsync [OPTION]... SRC [USER@]HOST:DEST //用户名默认为当前终端的用户ide
rsync [OPTION]... [USER@]HOST:SRC DEST spa
rsync [OPTION]... [USER@]HOST::SRC DEST orm
rsync [OPTION]... SRC [USER@]HOST::DEST递归
-v:显示详细信息进程
-a:以递归方式传输文件,并保持全部属性;等同于-rlpogtD,-a选项后可跟--no-OPTION参数,用于减去某个选项(一个),如-a --no-lci
-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:建立级联目录
--files-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客户端发起链接请求。