Rsync replaced with openrsync on macOS Sequoia
macOS Sequoia 上的 Rsync 被 OpenRsync 替代
Der Flounder 很少更新,偶尔有洞察。
Home > Mac administration, macOS > rsync replaced with openrsync on macOS Sequoia
macOS Sequoia 上的 Rsync 被 OpenRsync 替代
2025 年 4 月 6 日 rtrouton Leave a comment Go to comments
在许多基于 Unix 的操作系统上,rsync 是一个命令行工具,用于在计算机上(无论是直接连接到计算机的存储设备之间,还是位于网络上其他位置的计算机之间)传输和同步文件。rsync 命令行工具长期以来一直包含在 macOS 中,但 Apple 提供的最后一个版本的 rsync 是 2.x 版本(rsync 2.6.9,于 2006 年 11 月发布),即便 rsync 3.x 已经发布,Apple 也没有更新 rsync 超过该版本。为什么?这与 rsync 2.x 和 3.x 发布的 GNU General Public License (GPL) 开源许可证的版本有关,其中 rsync 2.x 在 GPLv2 许可证下发布,而 rsync 3.x 在 GPLv3 许可证下发布。在不深入研究背景法律问题的情况下,不提供 rsync 3.x 的原因是 Apple 认为虽然它可以遵守 GPLv2 许可证关于 rsync 2.x 的条款,但无法遵守 GPLv3 许可证关于 rsync 3.x 的条款。
这对 macOS 意味着,它一直在发布一个最后更新于 2006 年的 rsync 版本。虽然 Apple 一直在更新它随 macOS 附带的 rsync 2.6.9 命令行工具,以响应安全问题和其他问题,但事实仍然是,在 macOS Sequoia 之前的 Apple 版本的 rsync 已经有近 20 年的历史,并且不包括 rsync 2.6.9 版本之后引入的任何新功能。
现在,在 macOS Sequoia 中,Apple 已经用 openrsync 替换了 rsync 2.6.9,openrsync 是 rsync 的一个实现,它没有使用任何版本的 GPL 开源许可证。相反,opensync 在 BSD 系列许可证,特别是 ISC 许可证 下获得许可。ISC 许可证是一个 permissive license,这意味着它对如何使用、修改和分发获得许可的软件施加的限制最少,这意味着 Apple 认为它能够遵守 openrsync 的许可证条款,但认为它无法遵守 GPLv3 许可证关于 rsync 3.x 的条款。
我已经花了很多时间谈论许可证。为什么这个变化很重要?它在两个方面很重要:
- Apple 可以在未来发布 openrsync 的更新版本,而不必担心 Apple 是否能够遵守 rsync 的 GPL 开源许可证。
- openrsync 命令行工具与 rsync 兼容,但正如文档中所述,openrsync 只接受 rsync 命令行参数的一个子集。
对于 Mac 管理员来说,第 2 点很重要,因为它可能意味着在旧版本的 macOS 上可以使用的 rsync 功能现在在 macOS Sequoia 上可能无法使用,因为该功能不作为 macOS Sequoia 附带的 openrsync 命令行工具的一部分提供。有关 macOS Sequoia 上的 openrsync 命令行工具支持哪些功能的更多信息,请参阅以下链接: https://manp.gs/mac/1/openrsync
截至 macOS 15.4,openrsync 工具链接到 /usr/bin/rsync,因此您可以像使用 rsync 命令行工具一样运行 openrsync 命令行工具。有关 openrsync 命令行工具的版本信息,请运行以下显示的命令:
/usr/bin/rsync –version
您应该看到类似于下面显示的输出:
username@computername ~ % /usr/bin/rsync –version
openrsync: protocol version 29
rsync version 2.6.9 compatible
username@computername ~ %