rsync命令详解rsync用ssh隧道方式同步
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rsync命令详解rsync用ssh隧道方式同步相关的知识,希望对你有一定的参考价值。
● rsync格式
安装命令 yum install -y rsync
与scp的区别:
scp复制为完全覆盖,rsync为增量同步,只同步修改过的数据。
rsync命令格式如下:
- rsync 选项 源文件 目标目录(本地)
- rsync 选项 源文件 用户名@host:目标目录(本地文件同步到远程目录,ssh模式)
- rsync 选项 用户名@host:源文件 目标目录(远程目录同步到本地,ssh模式)
- rsync 选项 用户名@host::源文件 目标目录(daemon模式)
- rsync 选项 源文件 用户名@host::目标目录(daemon模式)
● rsync选项
-a:归档模式,表示以递归方式传输文件,并保持所有属性,等同于-rlptgoD。后面可以跟--no-OPTION,表示关闭其中的某个选项。
-r:对子目录以递归模式处理,主要针对目录
-v:打印信息
-l:保留软连接(只拷贝软连接文件,不拷贝目标文件)
-L:像对待常规文件一样处理软连接,如果是src中有软连接文件,则加上该选项后会把软连接指向的目标文件拷贝到dst
-p:保持文件权限
-o:保持文件属主信息
-g:保持文件属组信息
-D:保持设备文件信息
-t:保持文件时间信息
-P:显示进度
--delete:删除那些dst中src没有的文件
--exclude=PATTERN:指定排除不需要传输的文件,等号后跟文件名
--progress:在同步过程中可以看到同步的过程状态
-u:会把dst中比src还新的文件排除掉,不会覆盖
● rsync选项详解 - 使用-a选项
在备份目录时要养成加/的习惯,rsync -a test1/ test2/ - 使用-L选项
rsync -avL test1/ test2/,将软连接的目标文件拷贝过去,不会拷贝软连接文件。 - 使用-u选项
如果源文件内容修改,则会修改目标文件内容,如果目标文件修改,则不会覆盖目标文件内容。 - 使用--delete选项
无论是源目录还是目标目录增加了新文件,如果加上这个选项,则会删除新增文件 - 使用--exclude选项
有不想拷贝的文件时加上此选项
添加ssh端口,vi /etc/ssh/sshd_config,修改里面的Port参数。 默认是注释掉的,你增加一行即可。
准备两台机器,分别安装openssh-clients
yum install -y openssh-clients
然后通过密钥验证,实现脚本免密备份
两台机器ip分别为192.168.233.129(leewill1),192.168.233.130(leewill2)
需要从leewill1上拷贝数据到leewill2,首先确认一下leewill1上是否有这个文件/root/.ssh/id_rsa.pub
ssh-keygen
密码为空,直接回车。
将公钥文件的内容拷贝到目标机器上。
将其粘贴到/root/.ssh/authorized_keys中。
然后在leewill1上登陆
ssh [email protected]
然后退出来,在leewill1上执行rsync命令即可。
以上是关于rsync命令详解rsync用ssh隧道方式同步的主要内容,如果未能解决你的问题,请参考以下文章