一、先分清两种 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
编译依赖 gcc 或 clang 以及 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














暂无评论内容