在众多服务器操作系统中,FreeBSD 凭借其卓越的稳定性、高性能与易用性脱颖而出,尤其适合搭建文件共享与备份服务。相比当前分裂混乱的 Linux 生态,FreeBSD 提供了更统一、可靠的平台。要在 FreeBSD 上为 Mac 设备提供原生文件共享以及 Time Machine 备份支持,核心组件是 netatalk 和 avahi。
netatalk 是一款开源的 AFP 文件服务器,专为 macOS 客户端设计,能够实现无缝的文件共享体验。下面我们将通过 FreeBSD 的 ports 编译方式进行部署。
安装 netatalk
进入 ports 目录执行编译安装,注意排除 X11 依赖——文件服务器无需图形界面。
cd /usr/ports/net/netatalk/ && make WITHOUT_X11=yes config install clean
接着配置开机自启,编辑 /etc/rc.conf,添加以下内容:
netatalk_enable="YES"
afpd_enable="YES"
cnid_metad_enable="YES"
然后编辑 netatalk 的共享配置文件 /usr/local/etc/AppleVolumes.default,添加一个专门用于备份的共享目录:
/home/share/apple "Time Machine" allow:kmd options:usedots,upriv,tm cnidscheme:dbd
- Time Machine:备份空间的显示名称
- /home/share/apple:备份目录的绝对路径
- kmd:允许访问的系统用户名
启动服务:
/usr/local/etc/rc.d/netatalk start
此时在 Mac 的 Finder 中按下 Command + K,输入 afp://[服务器IP],就能看到共享的 Time Machine 卷。

连接成功后可以进行正常的读写操作,但务必注意服务器目录的访问权限设置正确。
安装 avahi
为了让 Mac 在恢复模式(开机按 Command + R)下也能自动发现 netatalk 服务,需要额外部署 avahi。Avahi 是 Zeroconf 规范的开源实现,与苹果 Bonjour 协议完全兼容。
同样使用 ports 方式安装,配置时只勾选 avahi-libdns:
cd /usr/ports/net/a vahi/ && make WITHOUT_X11=yes config install clean
在 /etc/rc.conf 中添加:
a vahi_daemon_enable="YES"
启动 avahi-daemon:
/usr/local/etc/rc.d/a vahi-daemon start
开始享受 Time Machine 吧
首次备份耗时较长,具体取决于机器性能与网络环境。此后系统会自动执行增量备份,省心又高效。

操作环境说明
- FreeBSD 9.1
- OS X Mountain Lion
Next…
使用普通 PC 作为文件服务器仍会消耗较多电力,后续计划尝试树莓派 + FreeBSD 的组合方案。目前树莓派的磁盘 IO 性能是主要瓶颈,可能影响备份效率,值得进一步验证改善。
