Dcatfly 2019-06-21
Netatalk 是一个免费开源的 AppleTalk 通信协议的实现,Linux 或者 BSD 系统通过它可以充当 Mac 的文件服务器 (AppleShare File Server, 网络协议是 AFP)、AppleTalk 路由、打印服务器等。本文通过安装 netatalk 软件,在centos 上实现当 Time Machine 的备份与共享服务器。
1、基础环境介绍
HP micro server gen8 centos7.2 X64 mini install netatalk-3.1.10.tar.bz2 avahi (Avahi 是 Apple’s Zeroconf 协议的开源实现,实现类似 Bonjour 的功能,它可以让你在 Mac 系统里自动发现你的 Linux 计算机) 依赖包:gcc、berkeley db library 、make 关闭**防火墙与selinux**。
2、下载netatalk源码包
https://sourceforge.net/projects/netatalk/ https://github.com/Netatalk/Netatalk
3、编译与安装
tar -xvjf netatalk-3.1.10.tar.bz2 cd netatalk-3.1.10 ./configure --with-init-style=redhat-systemd --with-shadow make make install
默认安装路径在/usr/local
4、配置afp.conf
从netatalk 3 版本开始只有一个配置文件afp.conf
vi /usr/local/etc/afpd.conf [Global] ; Global server settings mimic model = TimeCapsul log level = default:warn log file = /var/log/afpd.log hosts allow = 192.168.1.0/24 #允许访问的主机地址 uam list = uams_clrtxt.so uams_guest.so #必须,认证方式,目前只调通了guest模式 guest account = nas #必须,guest对应的linux系统用户 [TimeMachine] path = /nas time machine = yes #必须,yes才支持mac timemachine rwlist = nas #必须,设置nas 读写权限 force user = nas #必须,用户映射 vol size limit = 100000 #限制贡献volume大小为100GB,单位为MB。
5、配置avahi
如果想让mac自动发现linux AFP服务,还需要安装avahi软件,并启动avahi-daemon服务
yum install avahi vi /etc/avahi/services/afpd.service <?xml version="1.0" standalone='no'?> <!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-group>
6、启动netatalk、avahi-daemon服务
systemctl start avahi-daemon systemctl start netatalk systemctl enable avahi-daemon systemctl enable netatalk
netstat -tulpn
查看netatalk avahi端口是否启动监听,afp监听548端口
7、MAC挂在共享volume
finder--》go--》connect to-->browser,就可以看到已共享的linux服务器hostname,选择guest登录
或者添加链接afp://192.168.1.X
8、timemachine备份
在系统配置里面选择timemachine,找到对应的linux服务器,进行备份。
安装samba实现文件共享一.准备硬盘树莓派默认挂载ntfs格式硬盘只有只读权限,所以需要安装一些工具实现读写功能。sudo chmod 777 /samba我们需要查看硬盘的设备目录。[share]