TrueNAS 服务器基础使用说明

存储池

概念:在TrueNAS(下简称tn)中,存储池是一种虚拟概念,它代表着一个由单个或多个硬盘,使用特定模式组成存储空间的模型。我们可以通过安装单个或多个硬盘来创建存储池。

 

存储池

创建池即是定义存储空间的一种方式,要让这个存储池以什么样式来运行,存储池除用于存放文件外,还有多个用于管理数据的池概念,tn中有多种存储数据的模式,如下图:

 

Stripe: 让数据以独一份模式存储在独一个硬盘中,即我们平时的硬盘使用模式,一旦硬盘损坏,数据将需要专业恢复。

Mirror: 让数据以两份模式存储在分别两个硬盘中,若主硬盘损坏,不会影响数据安全,但需要至少2个硬盘

RAIDZ1~Z3: 让数据以软RAID阵列模式存储数据,其中Z1表示【允许损坏一个硬盘而不影响数据】,Z2则是【允许同时损坏两个硬盘而不影响数据】,以此类推。Z1至少需要3个硬盘进行支持,且最终存储池容量以最小的那个硬盘的容量为准。

dRAID1~3: 使用基本的RAID阵列模式,详情请查看RAID相关知识。

 

2.除了基本用于存储数据的vdev外,tn支持为日志、备用、缓存、元数据等数据分配硬盘进行存储。设置与数据vdev相同。

 

 

数据集与子数据集

概念:数据集相当于一个具有独立自由权限控制的特殊文件夹,我们的文件不是直接存放在存储池中,而是需要在存储池中创建一个数据集,文件数据都存放在数据集中。同时,数据集可以嵌套子数据集,子数据集可以独立于数据集管理权限。

添加数据集

我们可以在已创建存储池的基础上创建数据集,可以点击【添加数据集】进行创建:

 

名称:数据集的名称,也会作为文件夹的名称,但是只允许英文字母及数字命名,不能使用中文作为数据集名称

数据集预设:tn为了快捷创建对应的不同的主要用途的数据集而预留的基本设置,如果选择SMB专用数据集预设,则tn会默认使用NFS v4权限管理,否则会默认使用 UNIX权限管理。在这里我建议还是使用POSIX权限管理,权限会管得更精细一点,相关知识在下面章节有讲述

 

创建子数据集

可以点选已创建的数据集基础上,点击【添加数据集】来创建嵌套数据集,具体设置与数据集基本相同。

 

用户与群组

概念:tn中支持用户和群组,用户可以同时加入到多个群组中,加入多个群组的用户,可使该用户支持多个群组中特定的权限功能,用户与群组将作用于权限管理中。

 

我们可以添加用户,作为使用tn共享的登陆凭据

 

 

全名:用户的昵称,不作为登陆用户名,可使用中文

用户名:用于登陆的名字,不可使用中文,仅支持英文与数字

密码:用于登陆的密码

电子邮件:tn系统支持通知机制,若有需要可以输入电子邮件。

UID: 该用户的ID,tn所有操作都基于UID而不是用户名

附加组:除主用户组以外的其它群组,作用与主用户组相同,但可以添加多个

主用户组:属于该用户自己的群组,或可把新增用户加入到已有的群组。

创建新的主要组:tn会给当前新创的用户以同名的方式创建一个群组,并把该用户加入到该群组中。

 

主目录:tn支持每个用户有属于自己的目录,可以对该目录进行基本的UNIX权限控制。

认证方式:tn为Linux系统,所以用户都为SSH用户,支持使用密码或密钥证书进行登陆,也可以允许该用户登陆SSH

 

Samba认证:tn中支持SMB共享文件夹服务,对于SMB服务,tn使用samba开源的服务器,其中samba用户需要特定创建,samba创建特定账户时,账户本身也需要存在于Linux用户列表中。如果用户用于SMB共享认证的话,必须勾选。

群组创建基本相同,略。

 

POSIX权限设置

概念:tn支持三种权限控制,基中默认为UNIX权限,但因UNIX权限作用十分有限,所以基本不会用上,其次就是使用ACL控制中的POSIX权限了。

POSIX权限是通过作用于数据集(子数据集)中的用户访问权,来控制共享服务的访问权,POSIX在tn中作为通用的权限控制机制。

 

具体权限说明

我们可以在数据集右方的权限编辑按钮对数据集做权限管理。

 

POSIX基本权限概念

POSIX的权限控制仅有三个,分别为【只读】、【写入】、【执行】三个,其中【执行】为程序执行权限,包含部分文件列表请求等权限,所以如果需要设置【只读】时,请同时允许【执行】,否则系统访问时,虽然可以只读,但因【执行】权限缺失而无法请求文件列表而出现访问拒绝的情况。

POSIX在tn中有6种设置方式,分别如下:

 

用户:即该数据集下对该用户的权限管理,单独设置该用户时,可以对该用户进行【只读】、【写入】、【执行】三种权限

群组:即该数据集下对该群组所在的所有用户的权限管理,单独设置该群组时,可以对该群组下所有的用户进行【只读】、【写入】、【执行】三种权限

其它:针对其它用户和其它群组的权限控制,如果没有特定指定用户和群组,则被赋予其它权限,如果【其它】权限为空时,该文件夹将除POSIX列表以外的用户都不能被访问。

组对象:每一个数据集(子数据集)都应该拥有所有者,组对象则是表示该数据集的原始群组所有者,默认所有文件组对象都为root。

用户对象:每一个数据集(子数据集)都应该拥有所有者,用户对象则是表示该数据集的原始用户所有者。默认所有文件用户对象都为root。

掩码:对该数据集权限的上限管理,掩码具有最高权限管理,用户、群组、其它等等的权限管理,都会受掩码影响,假如掩码权限设置为【只读】,那么即使用户和群组等的权限设置为完全权限,却因掩码权限的限制,最终也有且只能是【只读】。

Flags: Linux中POSIX权限对目录分为两个层,一个是目录内的第一层,其次是除目录内第一层以外的其它层的权限控制。

按照上面的权限设置后,仅对数据集(即仅文件夹下的文件并不包含子文件夹里的文件)下的文件与文件夹产生权限影响,而若文件夹下的文件夹(及以后的文件层)都不会受到权限控制,Flags 则是表示,该权限是应用于除目录内第一层以外的其它层的权限控制。

例如:

用户[只读、执行]:对数据集下的文件和文件夹有只读和执行权限,但不会对数据集下的子文件夹里的文件产生权限控制。

用户[只读、执行]-Flags:对数据集下的文件夹里的其它文件和文件夹有只读和执行权限

 

注意:POSIX权限只能最多增加20个条目!

 

NFS v4 权限设置

概念:NFS v4 是POSIX权限的升级版,具有更多更细节的权限管理,且在tn中,NFS v4 支持增加1024个条目

基本权限概念

NFS权限包含5个选项

用户:即该数据集下对该用户的权限管理,单独设置该用户时,可以对该用户进行权限控制

群组:即该数据集下对该群组所在的所有用户的权限管理,单独设置该群组时,可以对该群组下所有的用户进行权限

所有者@: 即设置该数据集的所有者,与POSIX中的用户对象差不多

团队@: 即设置该数据集的群组所有者,与POSIX中的群对象差不多

每个人@: 即对于未设置用户或群组的其它用户进行权限的统一控制,相当于POSIX中的其它与掩码的合并体。

 

NFS v4 的权限类型包含4个

只读:即对该条目设置只读权限

调整:即对该条目设置可写入可修改可访问权限

阻止:即对该条目设置不可写不可读权限

完全控制:对该条目设置所有允许权限

 

调整与完全控制的区别:

调整的权限仅允许NFS中对只读和修改进行允许,但不允许修改文件属性,执行等权限

而完全控制则是对文件有绝对的操作权。具体的NFS权限如下图:

标记:即对数据集下面的文件夹之后的文件和文件夹的权限控制,和POSIX中的Flags类似。

 

创建SMB共享

本次案例使用tn进行SMB共享的创建

 

创建过程

可在【共享】->【Windows(SMB)共享三个点】->【开启服务】即可开启SMB共享服务。

 

创建共享

在创建好数据集后,可以点击SMB共享中的添加按钮,链接数据集位置作为共享的文件夹:

选择对应的数据集位置

名称:SMB共享文件夹中显示的共享名称,支持中文。

至此,共享文件夹即可创建完成。

 

TrueNAS其它设置

 

同步:针对阵列数据同步的设置,即如果有一个盘损坏了,并更换新的硬盘时,在同步过程中的设置

压缩级别:ZFS文件系统支持对数据进行压缩存放以尽最大可能发挥硬盘空间的功能,其中LZ4同时兼顾了CPU运算效率和数据体积的优点,默认即可。

启用ATime: 与LOG日志相关的设置,即用户每一次改写,访问和读取都可以被记录到LOG日志vdev中,开启的话会影响性能。

ZFS重复数据删除:ZFS文件系统支持识别同一个盘中存在两个相同的文件时,可以实现只保留一份数据,而其两个相同文件作为数据引用,开启后可以有效对重复文件数据进行优化,节省空间。

区分大小写:Linux默认区分大小写。

 

 

导入池:硬盘中包含池信息时,可以直接通过导入到tn的池,而无需再次创建数据集

导出、断开连接:断开存储池,可选择断开而不清理数据,断开并清理数据

扩展:若现在的存储池空间不足,且当前已新增了新的硬盘进去时,可以通过扩展功能,对新的硬盘加入到现在池中,从而扩充现在的存储池的存储空间。

定期快照是ZFS特有功能之一,它可以实时监测文件数据的变化,把仅变化的数据提取出来,作为快照,而不是对整个文件进行完整备份,若有文件删除,或误修改,可以通过快照恢复删除之前或误修改之前的数据到指定数据集中,若删除的数据过大,大于磁盘空间时,则删除有可能被拒绝,这有效防止勒索病毒的攻击。

 

新增用户标准流程

创建用户名

路径:用户凭证->本地用户

其它的可以暂时不变,但【创建新的主要组】可以取消,以免后面群组过多

 

改变用户的附加用户组

说明:为什么要增加和附加用户组?因为每一个数据集的POSIX权限,都由用户组去控制,不同的用户组已经设定好不同的访问权限

举例:designRW 组的权限是对Design数据集做【读写】权限,那么当我们申请新的用户时,在该用户的附加组里添加designRW 组,那么该用户就拥有了对Design数据集读写的权限,用户的附加组可以添加多个。

上图的用户经过添加附加用户组后,即可拥有对应数据集的共享权限

如果您喜欢本站,点击这儿不花一分钱捐赠本站

这些信息可能会帮助到你: 下载帮助 | 报毒说明 | 进站必看

修改版本安卓软件,加群提示为修改者自留,非本站信息,注意鉴别

THE END
分享
二维码
打赏
海报
TrueNAS 服务器基础使用说明
存储池 概念:在TrueNAS(下简称tn)中,存储池是一种虚拟概念,它代表着一个由单个或多个硬盘,使用特定模式组成存储空间的模型。我们可以通过安装单个或多个硬盘来创建存储池。   存储池……
<<上一篇
下一篇>>