freeNas版本
root@freenas[/var/log]# cat /etc/version FreeNAS-11.3-U5 (2e4ded5a0a)
MacOs版本
❯ system_profiler SPSoftwareDataType Software: System Software Overview: System Version: macOS 11.5.2 (20G95) Kernel Version: Darwin 20.6.0 ... Computer Name: Xiaojue’s MacBook Pro ...
在下图accounts目录下的Users里创建完freenas
用户后
在mac上尝试使用freenas
用户连接服务器
出现了连接立马断开的情况如下图所示
当时的第一个想法是afp服务没起来,登陆服务器通过下面命令查看服务状态,发现服务已经起来了(freenas上的服务脚本的路径还蛮特别的).
/usr/local/etc/rc.d/netatalk status
查看afp的日志并未有发现比较有用的内容,看afp日志文件的大小和个数, 感觉afp服务每次重启都会写一个日志文件
root@freenas[/var/log]# vi afp.log Oct 9 00:00:00 freenas newsyslog[42830]: logfile turned over Oct 10 00:00:00 freenas newsyslog[58994]: logfile turned over
google后发现afp服务使用的配置文件是/etc/local/afp.conf
并且支持打开debug模式,所以我就想着通过打开debug模式来获取更多的信息.通过修改配置项log level
(初看到这样写法的配置项感觉好不可思议,中间居然用空格来当连接符,可能是我见识少了), 最终的配置文件如下:
[Global] guest account = root uam list = uams_dhx.so uams_dhx2.so uams_guest.so max connections = 50 mimic model = RackMac afpstats = yes vol dbnest = no vol dbpath = /mnt/Media map acls = rights chmod request = preserve log file = /var/log/afp.log log level = default:debug [Homes] basedir regex = /mnt/Media home name = Media hosts allow = 0.0.0.0/0 time machine = yes cnid dev = no file perm = 644 directory perm = 755 umask = 000 veto files = .windows/.mac/
然后重启afp服务,并查看状态确保afp服务已经运行.
/usr/local/etc/rc.d/netatalk restart /usr/local/etc/rc.d/netatalk status netatalk is running as pid 23284.
再次尝试连接
但还是如下图中显示的连接失败了
再次查看日志发现如下的一些内容, 每次尝试登陆都会打印出这段日志Error reading header from fd
也就是没法afp服务无法访问/mnt/Media/freeNas
的意思.
Oct 13 21:32:21.614850 afpd[22497] {cnid_dbd.c:238} (debug:CNID): connecting to CNID server: localhost:4700 Oct 13 21:32:21.614979 afpd[22497] {cnid_dbd.c:244} (debug:CNID): connecting volume 'Homes', path: /mnt/Media/freeNas, user: freenas Oct 13 21:32:21.615050 afpd[22497] {cnid_dbd.c:276} (debug:CNID): init_tsock: ok Oct 13 21:32:21.615071 afpd[22497] {cnid_dbd.c:393} (debug:CNID): transmit: attached to 'freenas's home' Oct 13 21:32:21.615878 afpd[22497] {cnid_dbd.c:354} (debug:CNID): dbd_rpc: Error reading header from fd (volume freenas's home): closed
看来在我们如下图创建用户填写home directory
后,freenas并不会帮我们创建用户的家目录
通过下面的命令创建freenas
的家目录/mnt/Media/freeNas
,注意这里的家目录必须是以挂载路径为前缀,我这里挂载路径是/mnt/Media/
,所以合法的家目录是这样的/mnt/Media/*
mkdir /mnt/Media/freeNas chmod -R freenas:freenas /mnt/Media/freeNas
这时候再去连接,你会发现已经可以成功连接了
这个时候便可以使用和这个目录来作为存储端了.
10. Sharing — FreeNAS User Guide 9.3 Table of Contents
9.2.1.8 - How to add global options to afp.conf? | TrueNAS Community