默认创建初始目录
system 存放系统数据文件 系统默认存放<br>appdata 存储应用数据文件 系统默认存放<br>domains 存储虚拟机实例数据 建议存放,用户可选择<br>isos 存储系统镜像文件等 建议存放,用户可选择
共享场景配置
场景一<br>作为影音目录,希望局域网内所有人可见且不需要登录就可以访问来看电影等<br>但是必须登录之后,才允许写入新文件或删除已有的电影,类似于影音管理员角色<br>参数 推荐设置<br>Export(导出) Yes[是]<br>Security(安全) Security[安全]<br>点击 APPLY 之后,就可以选择控制哪些用户能够具体读写权限<br>除了指定拥有 Write/Read 读写权限的用户,其他用户(包括匿名用户)都是只读
场景二<br>作为工作目录,希望局域网内所有人可见,但必须登录后才能访问(禁止匿名)<br>同时,普通用户登录后只读,只有特定用用户菜可以读写<br>参数 推荐设置<br>Export(导出) Yes(是)<br>Security(安全) Private(私有)<br>点击 APPLY 之后,就可以选择哪些用户不允许访问,哪些用户可以读写、只读等
场景三<br>作为隐私目录,不希望被局域网内的用户看到有这个共享,<br>禁止匿名,且普通用户且必须登录后才能访问进行读写<br>参数 推荐设置<br>Export(导出) Yes(Hide)[是(隐藏)]<br>Security(安全) Private[私有]
大小写问题<br>unRAID 是基于 Linux 定制的,对文件名是大小写敏感的<br>medias、MEDIAS、Medias<br>这三种访问地址都能够在 Windows 上访问到对应的 Medias 用户共享目录<br>但是在 unRAID 上进行操作的时候,则必须使用 Medias 来定位该目录<br>如果使用 MEDIAS、medias,则会提示目录不存在
新建共享
Use cache pool<br>(对新文件/目录)使用缓存池<br>
设置该共享的缓存池机制,只有在序列中有缓存池时才会生效,上文已经介绍过 Unraid 缓存的四种机制,对于存放电影这类数据,文件体积大,不经常修改,并不需要使用缓存池,所以设置为 No 即可。如果创建的是一个需要经常读写的共享,比如存放文档类数据,可以设置为 Yes
Select cache pool<br>选择缓存池<br>
当 Use cache pool (对新文件/目录)使用缓存池 启用的时候才会生效,这个选项是用来设置该共享使用哪个缓存池的。小刻的序列里只有一个缓存池,如果有多个缓存池的话,可以在这里进行指定。
Enable Copy-on-write<br>启用写入时复制<br>
该选项只有在磁盘使用 btrfs 文件系统时才有效,而为了兼容性数据盘一般使用 xfs 文件系统。<br>此设置对非 btrfs 文件系统无效。<br>
Included or excluded<br>包含与排除
该选项只有在序列中有多个数据盘时才生效,它可以设置此共享使用哪几个数据盘的空间,或是不使用哪几个数据盘的空间。只需要设置其中一个即可。
Allocation method<br>分配方法<br>
有三个选项: High Water、Most Free(大部分可用)、Fill-Up(填满)。<br>其中 Fill-Up 是持续向一个硬盘写入直到填满,再向另一个磁盘写入;<br>Most Free 是每次写入都向剩余空间最多的那个磁盘写入;<br>High Water 是一种均匀各个磁盘剩余空间的写入方式,它基于序列中容量最大的磁盘,使用二分法创建多个“水位线”。<br>举个例子,容量 8TB 硬盘的水位线分别为 4TB, 2TB, 1TB, 512GB...使用 High Water 时,会依次将序列中的每个硬盘写入到剩余 4TB 的空间,然后再依次写入到剩余 2TB,1TB...<br><br>
如图所示,显示了序列中有 8TB, 3TB, 2TB 三个硬盘时,High Water 模式的磁盘写入方式:最开始只会在浅绿色区域进行存储,浅绿色区域存满后,继续在两个深绿色区域进行存储,以此类推。
在以上三种文件分配方法互有优劣,取决于所创建的共享具体要存放的文件类型和使用者的文件管理习惯。
Minimum free space<br>最小剩余空间
设置一个值,当共享所包含某个磁盘剩余容量低于该值时,就不向这个磁盘写入文件了,转而向共享包含的其他磁盘写入,当所有磁盘都无法写入时会报错。这个值一般设置为 0,如果使用者想要为某个磁盘保留一些空间的话,可以根据实际情况进行设置。
Split level<br>拆分级别
根据需要自动拆分任何目录<br>根据需要仅自动拆分顶层目录级别<br>根据需要仅自动拆分前两个目录级别<br>根据需要仅自动拆分前三个目录级别<br>根据需要仅自动拆分前四个目录级别<br>根据需要仅自动拆分前五个目录级别<br>手动-不自动拆分目录
可选 7 个层级,即 level-1 到 level-5,level-any,no。作为使用者可能很困惑这个分割层级是什么意思?有什么作用?官方的指南中对于 Split level 的解释很复杂,其实简单明了的解释是:Unraid 系统为了防止存放在共享的文件过于混乱地分散在各个磁盘而设置的限制。
举个栗子:小刻有两个冰箱(磁盘),冰箱 A 快满了但还没有完全满,冰箱 B 还有很多空间。一天小刻买来一盒蜜饼(文件),想把它们放到冰箱里,如果都放到 A 中,放不下。这时小刻可以选择把一部分蜜饼放进 A 冰箱,剩余的放到 B 里面;另一个选择是把所有蜜饼放到冰箱 B 里。<br><br>小刻的蜜饼是一个很实际的例子,考虑到数据完整性,很明显,小刻会选择第二种。而在 Unraid 中 Split level 就是来做这个选择的。当设置 level-1 (level-top) 时,只有根目录(1级目录)可以被分散在不同的磁盘,其子目录(2级目录)以及目录下的所有文件则必须存储在同一个磁盘上,Unraid 系统不会对 2 级目录进行分割。Split level 的其他几个选项以此类推,其中 level-any 代表数据可以被任意分割在不同磁盘上,no 代表 Unraid 不自动分割数据,而是需要使用者手动去设置,需要涉及命令行的操作,待进阶篇再去讲解。<br><br>Split level 的选择和共享中存放的数据类别有很大的关系,比如,本次创建的是用于存储电影文件的共享 "Movies",那么共享中的文件结构大概是图中这样,Movies 是 1 级目录,每部电影的文件存放在以电影名称命名的文件夹中,是 2 级目录。虽然因为聚合文件系统的关系,用户不需要知道文件存放在哪个磁盘,但实际上用户肯定不希望同一个电影文件夹中的电影文件被分散在不同的磁盘上。这种情况下,将 Split level 选项设置为 level-top(level-1) 就限制了 Unraid 不可以对 2 级以下的目录进行分割,电影文件就老老实实地存放在它自己的文件夹里了。如果对于 Split level 仍有困惑,可以参考官方说明文档:Manual/Shares - Unraid | Docs
Manual/Shares - Unraid | Docs
图示
当创建一个包含多个磁盘的共享目录时,通过聚合文件系统,共享目录下的文件可以跨磁盘存放,那么判断文件应该存放在哪个磁盘就需要 Minimum free space, Allocation method, Split level 这三个选项的设置来决定了。