FreeBSD 下使用 rsync(三):rsync 的几种安装方式

一、先分清两种 rsync

在 FreeBSD 上,”rsync”这个名字可能指向两个不同的程序:

  • openrsync:FreeBSD 13.0 起随 base 系统自带,路径通常为 /usr/bin/rsync。它是 rsync 协议的轻量开源实现,能完成基础同步,但不支持守护进程、ACL、部分高级选项
  • rsync(完整版):来自 net/rsync,功能最全,生产环境推荐。

先确认当前是哪个:

which rsync
rsync --version

若版本信息里出现 “openrsync” 或命令选项有限,建议按下面方式安装完整版。

二、方式一:pkg 二进制包(最快,推荐)

FreeBSD 的二进制包管理器 pkg 一条命令即可装好编译好的 rsync:

sudo pkg update
sudo pkg install -y rsync

安装完成后验证:

rsync --version
# 输出应类似:rsync  version 3.2.7  protocol version 31

三、方式二:通过 Ports 编译安装(可定制)

如果你需要自定义编译选项(如额外的安全模块、静态链接),可以从 ports 树编译:

cd /usr/ports/net/rsync
sudo make config   # 勾选需要的选项
sudo make install clean

首次使用 ports 前,若本地没有 ports 树,可先获取:

sudo portsnap fetch extract   # 或用 git 拉取 ports 仓库

四、方式三:从官方源码编译

适用于无法使用 pkg/ports 的特殊环境(如离线内网):

fetch https://rsync.samba.org/ftp/rsync/src/rsync-3.2.7.tar.gz
tar xzf rsync-3.2.7.tar.gz
cd rsync-3.2.7
./configure --prefix=/usr/local
make
sudo make install

编译依赖 gccclang 以及 make,FreeBSD 基础系统已自带 clang,一般无需额外安装。

五、卸载与版本切换

sudo pkg remove rsync          # 二进制包卸载
sudo pkg install rsync         # 需要时重新安装

若同时保留了 base 的 openrsync,注意 /usr/bin/rsync(base)与 /usr/local/bin/rsync(pkg 安装)的 PATH 优先级——默认 /usr/local/bin 在前,安装的完整版会优先被调用。

六、小结

日常使用直接 pkg install rsync 最省事;需要定制或离线环境再走 ports / 源码。装好后,下一篇我们系统学习 rsync 的常用命令。

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容