一)基础依赖
libgcrypt
1.下载源码
下载地址: https://www.gnupg.org/download/index.html
2.解压源码
tar -zxvf libgcrypt-1.8.4.tar.gz
3.编译前配置
cd libgcrypt-1.8.4
./configure --prefix=/data/ --with-libgpg-error-prefix=/data/
//如果这个libgpg-error没有需要安装
4.编译源码
make
5.安装libgcrypt-1.8.4
make install
libgpg-error
下载源码
https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-1.36.tar.bz2
1)解压软件包。
tar -jxvf libgpg-error-1.36.tar.bz2
2)进入libgpg-error的安装目录。
cd libgpg-error-1.36/
3)配置生成Makefile文件。
./configure
4)编译和安装libgpg-error。
make && make install
berkeley-db
http://www.oracle.com/technology/software/products/berkeley-db
1)解压软件包
tar -xf dbxml-6.1.4.tar.gz
cd dbxml-6.1.4/db-6.2.23/build_unix
…/dist/configure
2)编译安装
make;make install
二)下载Netatalk源码包
目前最新版本3.1.11
https://sourceforge.net/projects/netatalk/files/netatalk/
三)编译与安装
tar -xzvf netatalk-3.1.11.tar.gz
cd netatalk-3.1.11
./configure --with-init-style=redhat-systemd --with-bdb=/usr/local/berkeleydb
make
make install
./configure -h 查看更多编译帮助
四)配置afp.conf
位置在/usr/local/etc/afp.conf
vi /usr/local/etc/afp.conf
首先配置Netatalk,由于篇幅和需求问题,我这儿只列出简单配置,详细的请参考官方文档——> 传送门
[Global]
mimic model = Xserve #这个是指定让机器在你Mac系统中显示为什么的图标
log level = default:warn
log file = /var/log/afpd.log
hosts allow = 10.0.0.0/24 #允许访问的主机地址,根据需要自行修改
hostname = DUKE-NAS-AFP #主机名,随你喜欢
uam list = uams_dhx.so uams_dhx2.so #默认认证方式 用户名密码登录 更多查看官方文档
[Homes]
basedir regex = /home #用户的Home目录
[NAS-FILES]
path = /mnt/NAS-FILES #数据目录
五)创建一个新用户,用于访问AFP服务
因为root用户默认是禁止登录AFP服务的
useradd afp #创建新用户afp
paaswd afp #修改afp用户密码
六) Avahi的安装与配置
如果想让mac自动发现linux AFP服务,还需要安装avahi软件,并启动avahi-daemon服务
这个简单,直接yum就行
yum install avahi -y
配置Avahi 位置 在/etc/avahi/services/afpd.service
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">DUKE-NAS-AFP</name>
<service>
<type>_afpovertcp._tcp</type>
<port>548</port>
</service>
<service>
<type>_device-info._tcp</type>
<port>0</port>
<txt-record>model=Xserve</txt-record>
</service>
</service-group>