前两期 NAS 组装以及 FreeNAS 系统安装和简单使用之后,今天我又出了一个新视频教程。《 FreeNAS SMB 服务的深入使用》,我感觉举例的场景应该包括大多数需求了,欢迎大家一起讨论。
文本教程:
::: danger 注意
如果你使用 root 账号访问共享,需要先在Accounts ➞ Users中更新一下 root 密码。
:::
一、创建匿名访问共享
1.1 创建
进入Sharing ➞ Windows (SMB) Shares,然后点击ADD按钮
界面如下图所示
勾选Allow Guest Access
直接按SAVE保存
::: warning
如果共享创建在根目录,没有任何权限处理,默认是只读的,要进一步控制权限,需要创建二级数据集,并设置权限。如下图:
:::
1.2 Mac 访问
在Finder中按command+k进入Connect to Server窗口,输入我们的服务器地址,然后点Connect,直接选择Guest访问即可。
1.3 Window 访问
在浏览器里面直接输入服务器地址即可直接访问
二、验证用户访问共享
可以直接用我们的 root 用户访问,也可以自己在Accounts ➞ Users中创建用户和账户。与匿名唯一的区别就是访问共享需要输入用户名和密码。
三、共享限额
如果我们要针对用户或者用户组进行磁盘配额,需要如下设置:
高级设置中在VFS Object中加上ixnas属性,默认创建共享是开启该属性的
高级设置中在Auxiliary Parameters中添加配合设置,如ixnas:base_user_quota = 100M
效果:
ixnas其他属性如下:
ixnas:base_user_quota 设置用户可以使用的空间。例如ixnas:base_user_quota = 80G表示限制用户只能使用 80G 的空间。
ixnas:zfs_quota_enabled设置 ZFS 是否支持用户配额,值为True或False。默认为True,例如:ixnas:zfs_quota_enabled = True
ixnas:chown_homedir 将创建了的 home 目录的所有者改为当前经过身份验证的用户。这里ixnas:zfs_auto_homedir必须设置为True。值为True和False。例如ixnas:chown_homedir = True.
ixnas:homedir_quota 设置 home 目录使用配合。例如ixnas:homedir_quota = 20G设置 20G 的限额。
xnas:zfs_auto_homedir 使用 ZFS 数据集创建 home 共享,而不是新增目录。值为True和False,默认为False 例如:ixnas:zfs_auto_homedir = False
四、卷影副本
启用卷影副本这个功能可以让 Windows 客户端对文件版本进行还原。默认情况下该功能是开启的(见前面匿名共享的截图,Enable Shadow Copies选项)
开启后我们只要在Storage ➞ Snapshots冲创建我们数据集的快照。在 Windows 下就可以在以前的版本标签中打开之前的版本文件或者还原他们。
如果禁用该选项,以前的版本标签就不会显示我们快照了的内容。
五、时光鸡
创建新共享,选择勾选Time Machine即可。
在 Mac 的时光鸡中选择我们新建的共享目录,然后以正常姿势操作即可。
我们也可以针对时光鸡共享做容量限制,跟前面共享限额一样,属性放在Auxiliary Parameters里面。例如:
fruit:time machine max size = 500G
六、SMB 故障排除
Samba 是单线程的,因此 CPU 速度对 SMB 性能有很大的影响。 所以你的传输速度很慢,也有可能不是网络问题。参考性能调优
如果 SMB 服务没起来,可以在 Shell 运行testparm /usr/local/etc/smb4.conf看看是否有错误的配置。
如果数据集( dataset )是用来做 SMB 共享的,那么在创建的时候Share type选择 SMB,这样可以提高性能
启用ixnas (auxiliary parameter)也可以增加性能
在share settings设置中越少VFS Objects的配置项越好。
有一些特殊的情况,比如Final Cut Pro X想打开共享上的项目就得做额外的设置。官方文档上说要设置vfs objects的几个属性catia fruit streams_xattr。此时我们进入高级模式找到vfs objects项,选择对应的属性即可