如何通过Avahi/Zeroconf暴露多个AFP(Netatalk)服务
如何通过Avahi/Zeroconf暴露多个AFP(Netatalk)服务
嘿,这事儿其实挺简单的!你只需要在现有的_adisk._tcp服务配置里,给第二个共享添加一条新的txt-record条目就行——每个共享对应一个编号递增的dkX(从0开始依次往后数)。
具体操作步骤:
- 打开你现有的Avahi AFP服务XML文件(一般存放在
/etc/avahi/services/目录下,比如文件名可能是afp.service) - 在已有的
dk0条目下方,新增一条格式一致的txt-record:把编号改成dk1,adVN替换成你在afp.conf里定义的第二个共享名称,adVF保持0x81(这个参数表示可写共享,支持Bonjour浏览)。
举个实际例子,假设你的第二个共享名叫Media,修改后的完整配置会是这样:
<service> <type>_adisk._tcp</type> <port>9</port> <txt-record>sys=waMa=0,adVF=0x100,adVU=fc2ecd9b-7c98-46bc-a53c-512e73a3cb82</txt-record> <txt-record>dk0=adVN=Backups,adVF=0x81</txt-record> <txt-record>dk1=adVN=Media,adVF=0x81</txt-record> </service>
几个关键注意事项:
- 编号要唯一:每新增一个共享,就把
dk后面的数字加1(比如dk0、dk1、dk2……以此类推) - 共享名必须匹配:
adVN里的名称要和你在afp.conf中设置的共享名完全一致,不然Mac端会找不到这个共享 - 参数按需调整:
adVF=0x81适用于普通可写共享;如果你的第二个共享也是用来做Time Capsule备份的,可以把它改成0x100,和sys条目里的adVF保持一致 - 重启服务生效:修改完配置后,记得重启Avahi服务让改动生效,在OpenWRT里可以用命令:
/etc/init.d/avahi-daemon restart;同时也要确保Netatalk加载了新的共享配置,可重启Netatalk:/etc/init.d/netatalk restart
这样操作后,你的Mac就能通过Bonjour同时看到Backups和第二个共享啦!
备注:内容来源于stack exchange,提问作者Oleg Urzhumtsev
相关产品推荐
相关产品推荐

