Linux日常运维--rsync同步工具小总结

乐清SEO_开发应用_linux_ 乐清SEO2021-04-09 转载自:

在对服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来。rsync是一个功能非常强大的工具,其命令也有很多功能特色选项。

1. rsync特性

支持拷贝特殊文件如链接文件、设备等

可以有排除指定文件或目录同步的功能,相当于tar的排除功能

可以做到保持原文件或目录的权限、时间、软硬链接、属主、组等所有属性均不改变-p

可以实现增量同步,即指同步发生变化的数据,因此数据传输效率很高,tar -N

可以使用rcp,rsh,ssh等方式来配合传输文件(rsync本身不对数据加密)

可以通过socket(进程方式)传输文件和数据(服务端和客户端)*****。

支持匿名的或认证(无须系统用户)的进程模式传输,可实现方便安全的进行数据备份及镜像

2. Rsync的命令格式可以为以下六种:

rsync[OPTION]...SRCDEST

rsync[OPTION]...SRC[USER@]HOST:DEST

rsync[OPTION]...[USER@]HOST:SRCDEST

rsync[OPTION]...[USER@]HOST::SRCDEST

rsync[OPTION]...SRC[USER@]HOST::DEST

rsync[OPTION]...rsync://[USER@]HOST[:PORT]/SRC[DEST]

对应于以上六种命令格式,rsync有六种不同的工作模式:

拷贝本地文件。当SRC和DES路径信息都不包含有单个冒号”:”分隔符时就启动这种工作模式。如:rsync -a /data /backup

使用一个远程shell程序(如rsh、ssh)来实现将本地机器的内容拷贝到远程机器。当DST路径地址包含单个冒号”:”分隔符时启动该模式。如:rsync -avz *.c foo:src

使用一个远程shell程序(如rsh、ssh)来实现将远程机器的内容拷贝到本地机器。当SRC地址路径包含单个冒号”:”分隔符时启动该模式。如:rsync -avz foo:src/bar /data

从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含”::”分隔符时启动该模式。如:rsync -av root@172.16.78.192::www /databack

从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含”::”分隔符时启动该模式。如:rsync -av /databack root@172.16.78.192::www

列远程机的文件列表。这类似于rsync传输,不过只要在命令中省略掉本地机信息即可。如:rsync -v rsync://172.16.78.192/www

3. rsync三种模式

1、Local:rsync[OPTION...]SRC...[DEST]

2、Accessviaremoteshell:

Pull:rsync[OPTION...][USER@]HOST:SRC...[DEST]

Push:rsync[OPTION...]SRC...[USER@]HOST:DEST

3、Accessviarsyncdaemon:

Pull:rsync[OPTION...][USER@]HOST::SRC...[DEST]

rsync[OPTION...]rsync://[USER@]HOST[:PORT]/SRC...[DEST]

Push:rsync[OPTION...]SRC...[USER@]HOST::DEST

rsync[OPTION...]SRC...rsync://[USER@]HOST[:PORT]/DEST

4. rsync 常用参数选项

Linux日常运维--rsync同步工具小总结

5. 服务端配置文件

[root@localhost/]#cat/usr/local/rsync/rsyncd.conf

uid=root

gid=root

usechroot=no

maxconnections=5

strictmodes=yes

port=8888

pidfile=/var/run/rsyncd.pid

lockfile=/var/run/rsync.lock

logfile=/var/log/rsyncd.log

[backup]

path=/tmp/test/

comment=Thisisatest

ignoreerrors

readonly=false

list=no

#hostsallow=0.0.0.0

authusers=rsync

secretsfile=/etc/rsyncd/rsyncd.secrets

[root@localhost/]#cat/etc/rsyncd/rsyncd.secrets

rsync:fswl1234

Linux日常运维--rsync同步工具小总结

6. 从linux备份到win本地

从linux的/rsyncbak目录到windows的D: syncbak

cdC:ProgramFilescwRsyncin

rsync--port=8888-vzrtopg--progress--timeout600--deletersync@172.16.5.215::backup/cygdrive/d/rsyncbak

Linux日常运维--rsync同步工具小总结

记得授权

Linux日常运维--rsync同步工具小总结

7. 从win本地传输到linux

从windows的D: syncbak传linux的/rsyncbak

cdC:ProgramFilescwRsyncin

rsync--port=8888-vzrtopg--progress--timeout600--delete/cygdrive/d/rsyncbakrsync@172.16.5.215::backup

Linux日常运维--rsync同步工具小总结

Linux日常运维--rsync同步工具小总结