centos8安装rsync3.1.3及两台机器进行文件同步

《centos8安装rsync3.1.3及两台机器进行文件同步》

介绍

   rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。

   Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。Rsync使用所谓的“Rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。

  Rsync本来是用于替代rcp的一个工具,目前由rsync.samba.org维护,所以rsync.conf文件的格式类似于samba的主配置文件。Rsync可以通过rsh或ssh使用,也能以daemon模式去运行,在以daemon方式运行时Rsync server会打开一个873端口,等待客户端去连接。连接时,Rsync server会检查口令是否相符,若通过口令查核,则可以开始进行文件传输。第一次连通完成时,会把整份文件传输一次,以后则就只需进行增量备份。

  Rsync支持大多数的类Unix系统,无论是Linux、Solaris还是BSD上都经过了良好的测试。此外,它在windows平台下也有相应的版本,如cwRsync和Sync2NAS等工具。

安装及配置

主机配置
1.安装
# dnf -y install rsync

//检查是否已经成功安装
# rsync --version
《centos8安装rsync3.1.3及两台机器进行文件同步》

命令参数介绍

-artuz
-vzrtopg --delete --progress
-v :显示 rsync 过程中的详细信息。可以使用 ” -vvvv ” 获取更详细的信息。
-P :显示文件传输的进度信息(实际上 ” -P ” = ” –partial –progress ” ,其中的 ” –progress ” 才是显示进度信息的)。
-n –dry-run :仅测试传输,而不实际传输。常和 ” -vvvv ” 配合使用来查看 rsync 是如何工作的。
-a –archive :归档模式,表示递归传输并保持文件属性,等同于 ” -rtopgDl ” 。
-r –recursive :递归到目录中去( -a 中已包含 -r )。
-t –times :保持 mtime 属性。强烈建议任何时候都加上 ” -t ” ,否则目标文件 mtime 会设置为系统时间,导致下次更新检查出 mtime 不同从而导致增量传输无效( -a 中已包含 -t )。
-o –owner :保持 owner 属性(属主,-a 中已包含 -o )。
-g –group :保持 group 属性(属组,-a 中已包含 -g )。
-p –perms :保持 perms 属性(权限,不包括特殊权限,-a 中已包含 -p )。
-D :是 ” –device –specials ” 选项的组合,即也拷贝设备文件和特殊文件( -a 中已包含 -D )。
-l –links :如果文件是软链接文件,则拷贝软链接本身而非软链接所指向的对象( -a 中已包含 -I )。
-z :传输时进行压缩提高效率。
-R –relative :使用相对路径。意味着将命令行中指定的全路径而非路径最尾部的文件名发送给服务端,包括它们的属性。
–size-only :默认算法是检查文件大小和 mtime 不同的文件,使用此选项将只检查文件大小。
-u –update :仅在源 mtime 比目标已存在文件的 mtime 新时才拷贝。注意,该选项是接收端判断的,不会影响删除行为。
-d –dirs :以不递归的方式拷贝目录本身。默认递归时,如果源为 ” dir1/file1 ” ,则不会拷贝 dir1 目录,使用该选项将拷贝 dir1 但不拷贝 file1 。
–max-size :限制 rsync 传输的最大文件大小。可以使用单位后缀,还可以是一个小数值(例如:” –max-size=1.5m ” )。
–min-size :限制 rsync 传输的最小文件大小。这可以用于禁止传输小文件或那些垃圾文件。
–exclude :指定排除规则来排除不需要传输的文件。
–delete :以源服务器为主,对目的服务器进行同步。多则删之,少则补之。注意 ” –delete ” 是在接收端执行的,所以它是在 exclude / include 规则生效之后才执行的。
-b –backup :对目标上已存在的文件做一个备份,备份的文件名后默认使用 ” ~ ” 做后缀。
–backup-dir :指定备份文件的保存路径。不指定时默认和待备份文件保存在同一目录下。
-e :指定所要使用的远程 shell 程序,默认为 ssh 。
–port :连接 daemon 时使用的端口号,默认为 873 端口。
–password-file :daemon 模式时的密码文件,可以从中读取密码实现非交互式。注意,这不是远程 shell 认证的密码,而是 rsync 模块认证的密码。
-W –whole-file :rsync 将不再使用增量传输,而是全量传输。在网络带宽高于磁盘带宽时,该选项比增量传输更高效。
–existing :要求只更新目标端已存在的文件,目标端还不存在的文件不传输。注意,使用相对路径时如果上层目录不存在也不会传输。
–ignore-existing :要求只更新目标端不存在的文件。
–remove-source-files :要求删除源端已经成功传输的文件。

使用

@关于路径是否尾随斜线的问题
# rsync -a /etc /tmp
# rsync -a /etc/ /tmp
//不带尾随斜线表示的是整个目录包括目录本身;
//带上尾随斜线表示的是目录中的文件,不包括目录本身。
# systemctl enable rsyncd.service
# systemctl restart rsyncd.service

使用 rsync 同步

请参考这里>>>>>>>>>:centos安装rsync及两台机器进行文件同步 <<<<<<<<<

点赞

发表评论

邮箱地址不会被公开。 必填项已用*标注