理论教育 RSYNC语法解析:Linux系统管理教程

RSYNC语法解析:Linux系统管理教程

时间:2023-11-08 理论教育 版权反馈
【摘要】:RSYNC命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。RSYNC是一个功能非常强大的工具,其命令也有很多功能特色选项。语法:对应于以上7种命令格式,RSYNC有7种不同的工作模式:①复制本地文件。这类似于RSYNC传输,不过只要在命令中省略掉本地机信息即可。⑦使用rsync://协议从本地机器复制文件到远程RSYNC服务器中。RSYNC命令的选项如下:-v,--verbose:详细输出模式。

RSYNC语法解析:Linux系统管理教程

RSYNC命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。RSYNC使用RSYNC算法来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。RSYNC是一个功能非常强大的工具,其命令也有很多功能特色选项。

语法:

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

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

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

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

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

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

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

⑦使用rsync://协议从本地机器复制文件到远程RSYNC服务器中。如rsync-v src rsync://192.168.78.192/www。

RSYNC命令的选项如下:

-v,--verbose:详细输出模式。

-q,--quiet:精简输出模式。

-c,--checksum:打开校验开关,强制对文件传输进行校验。

-a,--archive:归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD。

-r,--recursive:对子目录以递归模式处理。

-R,--relative:使用相对路径信息。

-b,--backup:创建备份,当备份的目标目录已存在相同的文件时,将旧的文件重新命名为~filename。可以使用--suffix选项来指定不同的备份文件前缀。

--backup-dir:将备份文件(如~filename)放在该选项指定的目录下。

-suffix=SUFFIX:定义备份文件前缀。

-u,--update:仅进行更新,也就是跳过所有已经存在于DST,并且文件创建时间晚于要备份的文件,不覆盖更新的文件。

-l,--links:保留软链接。

-L,--copy-links:像对待常规文件一样处理软链接。

--copy-unsafe-links:仅复制指向SRC路径目录树以外的链接。

--safe-links:忽略指向SRC路径目录树以外的链接。

-H,--hard-links:保留硬链接。

-p,--perms:保持文件权限。

-o,--owner:保持文件属主信息。

-g,--group:保持文件属组信息。

-D,--devices:保持设备文件信息。

-t,--times:保持文件时间信息。

-S,--sparse:对稀疏文件进行特殊处理,以节省DST的空间。

-n,--dry-run:显示哪些文件将被传输。

-w,--whole-file:复制文件,不进行增量检测。

-x,--one-file-system:不要跨越文件系统边界。

-B,--block-size=SIZE:检验算法使用的块尺寸,默认是700字节。(www.daowen.com)

-e,--rsh=command:指定使用RSH、SSH方式进行数据同步。

--rsync-path=PATH:指定远程服务器上的rsync命令所在路径信息。

-C,--cvs-exclude:使用和CVS一样的方法自动忽略文件,用来排除那些不希望传输的文件。

--existing:仅更新已经存在于DST的文件,而不备份新创建的文件。

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

--delete-excluded:同样删除接收端那些被该选项指定排除的文件。

--delete-after:传输结束后再删除。

--ignore-errors:即使出现I/O错误,也要进行删除。

--max-delete=NUM:最多删除NUM个文件。

--partial:保留因故没有完全传输的文件,以加快随后的再次传输。

--force:强制删除目录,即使不为空。

--numeric-ids:不将用户的UID和组的GID与用户名和组名匹配。

--timeout=time IP:超时时间,单位为秒。

-I,--ignore-times:不跳过有同样时间和长度的文件。

--size-only:当决定是否要备份文件时,仅查看文件大小而不考虑文件时间。

--modify-window=NUM:决定文件是否时间相同时使用的时间戳窗口,默认为0。

-T--temp-dir=DIR:在DIR中创建临时文件。

--compare-dest=DIR:通过比较DIR中的文件来决定是否需要备份。

-P:等同于--partial--progress。

--progress:显示备份过程。

-z,--compress:对备份的文件在传输时进行压缩处理。

--exclude=PATTERN:指定排除不需要传输的文件模式。

--include=PATTERN:指定不排除不需要传输的文件模式。

--exclude-from=FILE:排除FILE中指定模式的文件。

--include-from=FILE:不排除FILE中指定模式的文件。

--version:打印版本信息。

--address:绑定到特定的地址。

--config=FILE:指定其他的配置文件,不使用默认的rsyncd.conf文件。

--port=PORT:指定其他的RSYNC服务端口。

--blocking-io:对远程shell使用阻塞I/O。

-stats:给出某些文件的传输状态。

--progress:在传输时实现传输过程。

--log-format=formAT:指定日志文件格式。

--password-file=FILE:从FILE中得到密码。

-h,--help:显示帮助信息。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈