OpenWrt搭建time machine软路由搭建苹果时间机器服务器
📅 2026/7/23 18:04:06
👁️ 阅读次数
📝 编程学习
硬件:r4s刷的openwrt固件 机械硬盘
软件:netatalk avahi
1.1
将硬盘连接到软路由并挂载
1.2
此步骤为建议步骤,将存储磁盘格式化为hfs+可在还原时直接通过usb连接mac(这将极大加快mac从时间机器恢复的速度)。将外置驱动器插入 Mac
#此命令在mac上的终端完成 #查看外置硬盘装载位置 diskutil list#此命令在mac上的终端完成 #卸载外置存储器 diskutil unmountDisk /dev/disk6 #格式化外置存储器为区分大小写的hfs+格式,名称为timemachine diskutil eraseDisk hfsx timemachine disk6在openwrt上安装kmod-fs-hfsplus以支持hfs+格式的读写
#此命令使用ssh连接软路由使用 opkg updata opkg kmod-fs-hfsplus2.1
在openwrt上安装netatalk avahi
#此命令使用ssh连接软路由使用 opkg updata opkg netatalk opkg avahi-dbus-daemon2.2
当前的 Netatalk 软件包有一点小小的 posix 权限问题。
#此命令使用ssh连接软路由使用 chmod 644 /etc/afp.conf chmod 644 /etc/extmap.conf3.1
netatalk文件配置,文件地址/etc/afp.conf。解释文档请参阅http://netatalk.sourceforge.net/3.0/htmldocs/afp.conf.5.html:
将文件下载至本地并用文本编辑器打开,修改为以下内容,注:
vol size limit为设置可供时间机器备份空间的大小1000为1G
; ; Netatalk 3.x configuration file ; [Backups] path = /mnt/sdb1/Backups time machine = yes vol size limit = 250000 valid users = @users完成后将afp.conf上传至/etc目录
3.2
afp.service配置,文件地址/etc/avahi/services/afp.service(此文件需自行编辑创建)
配置模版参照以下:
<?xml version="1.0" standalone='no'?><!--*-nxml-*--> <!DOCTYPE service-group SYSTEM "avahi-service.dtd"> <service-group> <name replace-wildcards="yes">%h</name> <service> <type>_afpovertcp._tcp</type> <port>548</port> </service> <service> <type>_device-info._tcp</type> <port>0</port> <txt-record>model=TimeCapsule</txt-record> </service> <service> <type>_adisk._tcp</type> <port>9</port> <txt-record>sys=waMa=0,adVF=0x100,adVU=00000000-AAAA-BBBB-CCCC-111111111111</txt-record> <txt-record>dk0=adVN=Backups,adVF=0x81</txt-record> </service> </service-group>注意:
model=TimeCapsule决定了 macOS Finder 中显示的硬件图标。还有一些可用的选项是:Xserve, PowerBook, PowerMac, Macmini, iMac, MacBook, MacBookPro, MacBookAir, MacPro, MacPro6,1, TimeCapsule, AppleTV1,1 以及 AirPort.
adVU=00000000-AAAA-BBBB-CCCC-111111111111必须被改为一个唯一生成的 UUID. 在 ssh中,你可以通过输入cat /proc/sys/kernel/random/uuid来创建一个 UUID(每次都会生成并显示一个新的 UUID)
adVN=Backups必须和共享自/etc/afp.conf中的timemachine = YES的虚拟宗卷名称相匹配。如果你使用我上面的示例配置,将该项设置为Backups即可,无需更改。大多数在线教程使用“TimeMachine”,然而“Backups”更经典,因为使用 macOS Server 或 Time Capsule 时,它是默认名称。不过使用什么确实无伤大雅,只要它们匹配就可以了。
4.1
创建用户和组
使用以下命令创建一个名为test(此名称可自行填写)的用户,并使用passwd命令修改密码
#此命令在ssh客户端使用 useradd --create-home --groups users --user-group test passwd test4.2
更改备份目录的权限。
#此命令在ssh使用 cd命令请切换至各自存储器实际地址 cd /mnt/sdb1/ mkdir Backups chmod 775 Backups/ chgrp users Backups/5.
启动netatalk服务并设置开机启动
#此命令在ssh终端使用 /etc/init.d/afpd strat /etc/init.d/afpd enable6.
在mac上连接Time machine服务器,在桌面按command+k连接服务器(示例:afp://192.168.2.1)
输入用户名(此篇使用的用户名为test)和密码即可连接,此后即可在时间机器里看到备份磁盘![]()
至此开始愉快的备份吧
本文参考连接:
[OpenWrt Wiki] AFP Netatalk 分享配置 (又名 Apple Time Machine).
openwrt山寨TC教程,备用_sExBodY_EaSY_新浪博客
编程学习
技术分享
实战经验