经过一年半的发展 发射 新版本 同步 3.2.4, 进行了一系列改进和错误修复的版本。
对于那些不熟悉 Rsync 的人来说,你应该知道这个 是一个文件同步和备份实用程序 它提供了增量数据的有效传输,它还可以处理压缩和加密的数据。
使用增量编码技术,它允许您同步文件和目录 两台机器之间 通过网络或在同一台机器上的两个位置之间, 最小化传输的数据量。
在大多数程序或协议中没有发现 Rsync 的一个重要特性是,复制发生时每个方向只有一次传输。 Rsync 可以复制或显示包含的目录和复制文件,可选择使用压缩和递归。
作为服务器守护进程,Rsync 默认侦听 TCP 端口 873,以原生 Rsync 协议或通过远程终端(如 RSH 或 SSH)提供文件。 在后一种情况下,Rsync 客户端可执行文件必须安装在本地和远程主机上。
Rsync 3.2.4 的主要新闻
在这个 Rsync 3.2.4 的新版本中 提出了一种新的参数保护方法 从类似于以前可用的“–protect-args”(“-s”)选项的命令行,但是 不会破坏 rrsync 脚本 (rsync 受限)。
保护 归结为特殊的转义字符,包括空格,将请求传递到外部 shell 时。 新方法不会转义引用块中的特殊字符,允许引用文件名而无需进一步转义,例如“rsync -aiv host: 'a simple file.pdf' is now allowed”。 要返回旧行为,建议使用选项“–old-args”和环境变量“RSYNC_OLD_ARGS=1”。
在这个新版本中突出的另一个变化是 实现了更新 xattrs 属性的能力 如果用户有权更改访问权限(例如,以 root 身份运行时),则用于只读模式下的文件。
添加并通过默认参数“–info=NONREG”启用以显示有关传输特殊文件的警告。
剧本 atomic-rsync 已用 Python 重写并扩展了忽略代码的能力 返回非零。 默认值是忽略代码 24,它在 rsync 运行时文件丢失时返回(例如,对于在初始索引时存在但在初始索引时被删除的临时文件返回代码 24)。迁移)。
解决了处理小数点字符的长期问题 基于当前语言环境。 对于设计为仅处理字符“.”的脚本。 在数字方面,如果违反兼容性,您可以设置“C”语言环境。
此外,还修复了 zlib 库包含的代码中的漏洞(CVE-2018-25032),该漏洞在尝试压缩特别准备的字符序列时导致缓冲区溢出。
其他变化 从这个新版本中脱颖而出:
- 实现了“–fsync”选项以在每个文件操作上调用 fsync() 函数以刷新磁盘缓存。
- rsync-ssl 脚本在访问 openssl 时使用“-verify_hostname”选项。
- 添加了“–copy-devices”选项以将设备文件复制为普通文件。
- 减少增量传输大量小目录时的内存消耗。
- 在 macOS 平台上,启用了“-atimes”选项。
- rrsync(受限 rsync)脚本已用 Python 重写。
- 添加了新选项“-munge”、“-no-lock”和“-no-del”。
- 阻止选项“--copy-links” (-L)、“--copy-dirlinks” (-k) 和“--keep-dirlinks” (-K) 默认启用,以便更有效地操纵指向目录的符号链接的攻击难的。
- munge-symlinks 脚本已用 Python 重写。
最后,如果您有兴趣能够了解更多,可以在 以下链接。