修改SMB最小协议

  服务器最小协议由FreeNAS上的sysctl控制。 在System-> Tunables 下添加sysctl来使其永久化:Variable = freenas.services.smb.config.server_min_protocol Value = NT1 Type = Sysctl Comment =“您想要的任何内容” 注意:一旦更改此值,应该在服务器 - > SMB的UI中切换“开”/“关”按钮或重新生成smb4.conf文件

  sharing>windows(SMB)shares>添加目录后配置参数勾选Default Permissions并取消Use as home share

各种卷结构的创建要求

  • RAID Z:最少由3块硬盘组成,其中一块硬盘的空间用作奇偶校验,允许一块硬盘损坏,不丢失数据。
  • RAID Z2:最少由3块硬盘组成,其中两块硬盘的空间用作奇偶校验,允许两块硬盘同时损坏,不丢失数据。
  • RAID Z3:最少由5块硬盘组成,其中三块硬盘的空间用作奇偶校验,允许三块硬盘同时损坏,不丢失数据。
  • Mirror 镜像:最少由2块硬盘组成,两块硬盘互作镜像,任何一块硬盘损坏,不丢失数据。
  • Stripe 带条:最少由1块硬盘组成,该形式无冗余,因此任何硬盘损坏,该卷下的所有数据均会丢失,这种类型的卷唯一有点是读写速度最快。
  • Log(ZIL):用于写操作的高速缓存,通常用 SSD 固态硬盘来创建该设备。
  • Cache(L2ARC):用于读操作的高速缓存,通常用 SSD 固态硬盘来创建该设备。
  • Spare:备用设备,此处略过不谈。

数据集创建选项介绍

  1. Dataset Name:数据集名称,为数据集设置一个名称,该项必填,且不可使用中文,建议只使用英文字母;
  2. Compression Level:压缩级别,系统的默认采用 lz4 压缩算法,如果不做修改,新数据集将继承系统的默认值。本教程后面会对压缩方式做单独介绍;
  3. Share type:共享类型,创建数据集的目的是用于文件共享,如果该数据集用作 NFS 共享,则选择 UNIX,如果用作 CIFS 共享,则选择 Windows,如果用于 AFP 共享,则选择 Mac。
  4. Case Sensitivity:大小写敏感,即指定存储到该数据集中的文件名称是否区分大小写,默认为 sensitive 区分大小写,也可以选择 insensitive 不区分大小写或** mixed 混合**(智能识别)。
  5. Enable atime:记录文件访问时间,此选项用来控制是否实时更新文件被访问的时间,默认为 继承上级卷/数据集的设置,也可以设置为 On 启用,或 Off 禁用。设置为禁用可以避免访问文件时产生过多的日志流量,同时也有助于提高系统性能;
  6. Quota for this dataset:空间限额,默认值为 0 即不限制该数据集的存储容量;例如,输入 20GiB 代表该数据集有 20 GB 的可用存储空间。
  7. Quota for this dataset and all children:该数据集和其子数据集的空间限额,默认值为 0 即不限制该数据集的存储容量;例如,输入 20GiB 代表该数据集以及其子数据集共有 20 GB 的可用存储空间。
  8. Reserved space for this dataset:预留空间,在硬件容量允许的情况下,为此数据集预留指定的存储空间。默认值为 0 即不预留存储容量;例如,输入 20GiB 代表在硬盘容量允许的情况下,确保预留20 GB 的存储空间给该数据集。
  9. Reserved space for this dataset and all children:为该数据集和其子数据集预留的空间,默认值为 0 即不预留存储容量;例如,输入 20GiB 代表在硬盘容量允许的情况下,确保预留20 GB 的存储空间给该数据集和其子数据集。
  10. ZFS Deduplication:ZFS 重复数据删除,默认为集成上级卷/数据集设置,也可以设置为 On 启用,Verify 验证,Off 禁用。本教程后面会对 ZFS 重复数据删除做单独介绍;
  11. Record Size:记录大小,即指定扇区大小,默认情况下 ZFS 会根据存入的数据自动调整这个值,但如果存入的文件大小是固定的(例如数据库),则可以在此处指定一个固定的记录大小,从而获得更好的性能。可以通过查阅固态硬盘 4K 对齐方面的教程来对比理解记录大小的概念。

为数据集指定一个名称,再结合上述选项介绍进行调整以满足你的需求,点击 “Add Dataset” 添加数据集按钮,数据集就创建好了。

数据集支持嵌套,即可以在某个数据集中再次创建数据集,没有数量限制,可以根据需要自由创建。也可以在数据集中创建 Zvol 虚拟硬盘,用于 iSCSI 块级共享,本教程点到为止。与 iSCSI 相关的内容将在单独的篇幅中进行介绍。

压缩方式介绍

压缩可以节省更多的存储空间,但强度过大的压缩会对系统性能造成一定的影响,应该为数据集指定哪一种类型的压缩,需要在性能和存储空间之间做权衡。ZFS 提供的压缩算法对客户端和应用程序是透明的,即对数据压缩和解压均在 NAS 服务器端进行,用户存取数据时是察觉不到的。以下是可以选择的压缩算法:

  • lz4:这是自 FreeNAS 9.2.1 开始系统默认选用的压缩算法,它对系统性能影响小,向数据集中存取数据的速度几乎与不采用压缩时一样,推荐选用。
  • gzip:此压缩算法分为 9 个级别,数字越大,压缩效果越好,速度也最慢。fastest (level 1) 压缩率最低,速度最快。 maximum (level 9) 压缩率最高,速度最慢。系统给 Gzip 压缩算法的默认值为 level 6 即压缩率适中,速度也适中。
  • zle:快速但简单的算法,以消除 runs of zeroes。
  • lzjb:压缩能力很好,但相比 lz4 压缩算法,它的性能要差一些。

通常,不推荐禁用压缩,建议采用 lz4,用微乎其微的性能损失,换取更多的存储空间。

重复数据删除技术

Deduplication(重复数据删除)对存入数据集中的相同文件只保留一个副本,从而节约存储空间。 取决于存入数据集中重复数据的总量,重复数据删除技术可以通过减少数据的写入,从而有效节省存储空间。但是,这种技术非常耗费内存,通常 1TB 存储空间需要额外提供 5GB 的内存。相比之下,同样是为达到节省存储空间的目的,使用压缩,性价比要更高。

需要格外注意的是,一旦为数据集启用了重复数据删除功能,已存入的数据无法取消该技术的控制。向启用重复数据删除功能的数据集中存入越多的数据,就需要越多的内存,当内存空间不足以容纳 DDT 表时,系统会将 DDT 表存入硬盘,这样一来,系统性能将会一落千丈(大坑)。重复数据删除技术是性能的噩梦,内存的克星,请务必谨慎启用。

删除数据集

删除数据集的操作非常简单,点选要删除的数据集,在界面下方找到并点击 “Destroy Dataset” 销毁数据集按钮,然后点击弹出提示框中的 “Yes” 确定按钮即可。

freenas 11.2踩过的坑的更多相关文章

  1. 第八篇:web之前端踩的一些坑

    前端踩的一些坑   前端踩的一些坑 本节内容 事件代理 清除标签的所有事件 bootstrap的模态框自定义方法 ajax在django里面实现post提交 ajax提交数据嵌套 1.事件代理 之前写 ...

  2. CentOS7.2上用KVM安装虚拟机window10踩过的坑

    最近两个星期一直在琢磨kvm安装window10操作系统,并且通过桥接模式与外界通信,经历了九九八十一难,终于搞定.下面就记录以下我们在探索的过程中踩过的坑. 安装KVM 1. 系统要求:需要一台可以 ...

  3. Django 踩过的坑(一)

    平台:win10 工具:cmd python3 刚刚学习Django搭建环境,网站还木有发布,就直接来了个大麻烦. 一切按着<Django 学习笔记(二)>这篇文章来的,在最后cmd运行服 ...

  4. [问题解决]RedHat7更换CentOS7的yum源时踩过的坑

    更换yum源的流程 查看当前yum程序 $ rpm -qa|grep yum 这里推荐将其结果截屏或拷贝出来,以免后面报错修复. 删除原有yum源 $ rpm -aq | grep yum|xargs ...

  5. 那些移动端web踩过的坑

    原文链接:https://geniuspeng.github.io/2017/08/24/mobile-issues/ 扔了N久,还是捡回来了.好好弄一下吧.刚工作的时候挺忙的,后来不那么忙了,但是变 ...

  6. 创建优化的Go镜像文件以及踩过的坑

    在Docker上创建Go镜像文件并不困难,但建立的文件很大,接近1G,使用起来不太方便.Docker镜像的一个主要难题就是如何优化,创建小的镜像.我们可以用多级构建的方法来创建Docker镜像文件,它 ...

  7. 转载:appium踩过的坑

    原文地址:http://blog.csdn.net/wirelessqa/article/details/29188665 自己的操作:由于在window上安装appium时,报各种错误:所以选择在u ...

  8. apicloud地图、即时通讯、人脸识别登录、以及平时踩过得坑

    apicloud技术浅谈 导语 apicloud 的学习也有一段时间了,这是我个人的一些经验,和踩过的坑,希望对大家能有一些帮助. apicloud的知识准备 apicloud 是一个用原生的思想搭建 ...

  9. 项目中踩过的坑之-sessionStorage

    总想写点什么,却不知道从何写起,那就从项目中踩过的坑开始吧,希望能给可能碰到相同问题的小伙伴一点帮助. 项目情景: 有一个id,要求通过当前网页打开一个新页面(不是当前页面),并把id传给打开的新页面 ...

随机推荐

  1. Linux下使用DD命令测试磁盘读写速度

    dd是Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换,所以可以用来测试硬盘的读写能力~ 几种常见的DD命令,先看一下区别~ dd bs=6 ...

  2. IronPython使用

    C#: class Program { static void Main(string[] args) { ScriptEngine engine = Python.CreateEngine(); S ...

  3. Linux下让进程在后台可靠运行的几种方法

    想让进程在断开连接后依然保持运行?如果该进程已经开始运行了该如何补救? 如果有大量这类需求如何简化操作? 我们经常会碰到这样的问题,用 telnet/ssh 登录了远程的 Linux 服务器,运行了一 ...

  4. 如何只利用NMAKE+CL+LINK写WIN32程序

    关键是1.包含<Windows.h>及其他的相关头文件2.在LINK指令中最起码要加上KERNEL32.LIB USER32.LIB GDI32.LIB(不需要制定其路径,因为NMAKE, ...

  5. Python处理文件以及文件夹常用方法

    1.创建文件并且写入 2.多行读取文件的方式 readlines() 3.一次读取全部内容 4.文件的删除 5.shutil 模块实现文件的复制 6.文件的重命名 7.获取文件的后缀名 8.pytho ...

  6. Bitmap转灰度字节数组byte[]

    工作中遇到图片转灰度数组的须要,经过研究和大神的指导.终于得到例如以下两个方法.能够实现位图转灰度数组 简单的位图转灰度数组就是:得到位图中的每一个像素点,然后依据像素点得到RGB值,最后对RGB值, ...

  7. MySQL5.0、5.1、5.5、5.6功能进化

    目前线上使用的版本情况:新上线端口统一使用5.5,不说别的,一个快速恢复重启就值回票价. 但因为历史原因还有大量5.1的版本,甚至,I’am sorry,还有少数5.0的版本. 至于5.0以前的版本, ...

  8. Linux - 用户管理常用命令

    1.查看Linux已经存在的用户: [root@CMCC_91 ~]# cut -d : -f 1 /etc/passwd [root@CMCC_91 ~]# cat /etc/passwd |awk ...

  9. TensorFlow基础笔记(7) 图像风格化效果与性能优化进展

    参考 http://hacker.duanshishi.com/?p=1693http://blog.csdn.net/hungryof/article/details/53981959http:// ...

  10. Struts框架可以支持以下哪种程序开发语言?(选择1项)

    A.C B.C++ C.Java D.C# 解答:C