日志
- 2023-04-01:优化SATA控制器直通的相关教程。
前言
请根据《NAS系列 PVE基本设置》进行必要的设置,特别是
硬件直通/核显直通
小节!
经过OpenWrt的系列教程,相信大家已经完成了对互联网的访问。搞定网络问题后,接下来就是解决存储问题——基于NAS系统OpenMediaVault(简称OMV)。关于我为什么选择OMV已经在文章《NAS系列 为什么你需要一台NAS?》中充分说明。本文的主要内容是描述在PVE里安装OMV虚拟机,其中的技巧也适用于绝大多数Linux虚拟机。
准备工作
视频安装教程可见(已精准空降):【司波图】基于PVE的千元级带万兆交换机的AIO服务器搭建
镜像
先按《NAS系列 准备安装PVE系统》的准备工作——OMV镜像
下载好OMV的ISO镜像,并上传到local(local)
中:
其它
-
最好使用bitwarden之类的密码工具来安全地管理各种密码。具体可见我的文章《Docker系列 搭建密码管理应用bitwarden》。
-
如果你对用户权限和管理并不十分熟悉,下面所列举的命令行最好在
root
用户下运行。我平时管理的时候为了方便,也是直接使用root
用户。 -
OMV GUI的操作都要额外保存才能生效。大家记得喔!下面的步骤我不再提示哪里需要保存生效,自己眼神即可。
OMV虚拟机配置
步骤大致如下,结合安装视频自己搞吧:
- 常规:
- 操作系统:
- 系统:虚拟机是Linux系统的都推荐使用
VirtIO SCSI
;群晖应该是不支持的。值得一提的是,VirtIO SCSI single
和VirtIO SCSI
是一样的,只不过一个SCSI磁盘对应一个VirtIO的控制器。大家也可以试试VirtIO SCSI single
好不好用。我用的是VirtIO SCSI
:
- 硬盘:这里的存储是
loca-lvm
。你甚至可以选外挂在PVE中的存储。不过我一般是使用系统盘,这样对空间的管理会更加高效。我之所以分配很大的磁盘空间(100G),是因为我会在OMV里使用docker,并且不打算更改docker的默认位置。正常运作中我的OMV系统盘占用大致是17G
,建议空间够的小伙伴分配多点空间。
- CPU:选最大核心数以充分调用CPU性能。
- 内存:给尽量多的内存,或按需要即可。我有32G内存,直接分了24G。
- 网络:选默认的网桥
vmbr0
和VirtIO模型即可。
最后直接确认即可:
不过,我们暂时不要启动OMV虚拟机;完成后面的相关配置(比如直通SATA控制器)后再启动。
了解OMV的网络
具体说明请参考:《NAS系列 PVE基本设置》
这里我们大致回顾一下OMV的网络通常是怎么走的:
如果你以后想要修IP地址和网关,可以在OMV GUI里操作,具体位置在网络——接口
里:
直接编辑:
保存并应用配置生效,没生效就重启OMV。
安装OMV
硬件和选项设置
视频教程(已设置精确空降): 【司波图】基于PVE的千元级带万兆交换机的AIO服务器搭建
这里我放上自己正在使用的配置,希望对大家有参考作用:
- 硬件:由于我们需要让OMV接管NAS的6个盘位,因此我们要将SATA控制器直通给OMV。这是非常重要的,否则PVE会在OMV系统关机或重启时接管NAS硬盘,这可能会导致阵列数据不可逆性损坏!
- 选项:关于QEMU Guest Agent的设置见《NAS系列 PVE基本设置》的
重启/关闭/停止虚拟机
小节,这里暂时默认即可(默认是禁用
)。
启动和安装
启动OMV,自己根据上述视频的演示一步步来安装OMV就行,个人觉得比安装Windows要简单得多。你只需要注意:
- IP地址:最好提前想OMV的IP和网段。当然,以后也可以修改的,不用太担心。
- 镜像:选国内的镜像。这样更新/下载软件时更快。
- 固化硬盘挂载:在PVE.OMV Shell里运行
update-grub
,重启OMV生效。
值得一提的是,OMV有一个非常强大的命令行可视化工具可以进行修改IP等高级操作,特别是当你设置错误导致Shell或GUI不可用时是非常重要。具体调用方式如下:
成功安装后,登陆http://<OMV的局域网ip>
和相应的帐号/密码后即可访问PVE.OMV GUI(这个帐号和密码与登陆ssh的帐号和密码一般是不同):
当然,一开始可能不会有这么多仪表的,你需要自己选择显示哪些。我一般都是全选。
直通SATA控制器
我们需要给OMV直通SATA控制器,让OMV可以直接管理硬盘(比如进行S.M.A.R.T.检测
等):
首先,要在虚拟机中“硬件”选项进行设置,即添加SATA控制器到OMV虚拟机(它是一个PCI设备),这个前面也讲了:
启动OMV后,可以在PVE.OMV Shell
里输入命令查看SATA控制器是否成功直通:
lspci | grep 'SATA controller'
如果输出类似于:
00:10.0 SATA controller: Intel Corporation 200 Series PCH SATA controller [AHCI mode]
可以看到SATA controller
的相关记录,则提示SATA控制器已经成功直通!
这时你可以给NAS插满硬盘。在入槽前,建议大家用马克笔标记一下每个盘的昵称
,方便日后管理:
如果以后某个硬盘坏了,新硬盘也沿用已坏硬盘的名字。由于我们在BIOS里设置了支持热插拨,所以你插入硬盘后即可被OMV自动识别。
我的NAS有6个盘位,目前的配置是4个4T西数红盘,组ZFS阵列;另外还有两个8T的西数红盘当作普通的硬盘用。之后我会具体讲怎么配置,这里按下不表。
安装OMV-extras插件
- How to Install OMV-Extras on OpenMediaVault
- OpenMediaVault-Plugin-Developers:官方仓库。这里有4/5/6的OMV-Extras。
如果你后面要使用ZFS阵列,必须安装OMV-extras。否则,按需安装即可。
当OMV成功安装后,安装OMV-extras是最重要的事情之一。它与ZFS密切相关——只有安装了OMV-extras后,OMV才可以比较好地管理Linux内核并支持ZFS。此外,OMV-extras也提供了更加丰富的第三方插件。具体方案如下:
国外用户或可以使用Github的小伙伴可以这样安装OMV-extras:
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install | bash
国内用户或无法使用Github的小伙伴可以这样安装OMV-extras:
wget -O - https://gitee.com/liziyi0914/omv-packages/raw/master/install | bash
基本是自动完成的,具体输出如下:
安装完成后,在已经登陆的GUI按Ctrl+Shift+f
或F5
刷新GUI即可:
更换PVE内核并安装ZFS
为了支持ZFS阵列,我们需要给OMV更换一个PVE Linux内核。在OMV-extras安装完成的基础上,我们安装kernel
插件:
之后选项PVE内核为启动项:
重启OMV后生效。之后就安装ZFS插件即可:
保存更新,F5刷新GUI。如果在存储器
中出现了ZFS
选项即代表ZFS安装成功:
这时,你也可以在PVE.OMV Shell中输入命令测试一下zfs --version
测试一下。输出类似于:
zfs-2.1.9-pve1
zfs-kmod-2.1.9-pve1
这也是ZFS安装成功的信号之一。当然,上面的图里已经有一个我布置好的ZFS阵列;你最开始的时候应该是没有任何内容的。
存储器和服务
这部分内容算是NAS特色的,平时只使用Windows或一般Linux系统的用户了解并不多。以下是各项目的相互关系:
存储器
OMV系统中常有的存储器选项包括:
- 磁盘(Disks):指插入NAS硬盘槽位并被操作系统(这里就是OMV)识别的磁盘。这是所有存储功能的基础。相关信息包括磁盘的各项“硬指标”,比如型号、序号、供应商、容量。
S.M.A.R.T.
本质上是关于磁盘使用和损坏程度的信息。
- 文件系统(File system):指被“挂载”(mount)的磁盘/磁盘阵列。大家可以将“磁盘阵列”认为是一块“融合磁盘”,即被系统认为是一个文件系统(尽管它是由多块磁盘组成)。磁盘/磁盘阵列被操作系统识别后,却不一定马上被投入使用。投入使用的决策一般由用户作出,通过
mount/umount
等命令进行控制。比如,OMV的文件系统会展示文件系统的类型、可用容量、已用容量、挂载/引用/在线等状态:
- 共享文件夹(share folders):定义文件系统中哪些文件夹需要被共享出去。毕竟,文件系统中可能有多个文件夹,有一些文件夹可能是私密的;或者是没有必要共享给其它用户。这里主要是定义用户(组)对文件夹的权限,这个之后在介绍NAS服务时会进一步讲解:
另外,还有一些高级选项,比如ZFS和远程挂载,这个以后再作介绍。值得一提,尽管可能有某些命令行(比如挂载硬盘对应的mount
命令)具备类似功能,但在OMV中GUI已经全面地托管了这些权限,导致命令行只能临时使用这些功能;而只有在GUI中保存并应用新配置才可以永久化。关于这一点,在挂载硬盘时要特别注意——在命令行中挂载的硬盘在OMV重启后会发生掉盘现象,这通常会影响数据安全。
服务
这里特指文件分享相关服务
在共享文件夹的基础上,可以设定特定的分享协议,并制定比较多样的规则:
小结
本文主要是讲述了OMV虚拟机安装的一些方法,并简单配置了OMV环境和了解OMV的存储器和部分服务。在之后的教程,我们会进一步讲解每个项目应该如何灵活地配置,以更好地使用OMV。ZFS相关内容也是在后续教程中讲解。敬请期待!
扩展阅读
- AnalogJ/scrutiny: Hard Drive S.M.A.R.T Monitoring, Historical Trends & Real World Failure Thresholds: 实时检查硬盘 S.M.A.R.T 健康状态的工具,Docker 安装,自带 Web UI。 From 科技爱好者周刊(第 251 期):国产单板机值得推荐 – 阮一峰的网络日志
---------------
完结,撒花!如果您点一下广告,可以养活苯苯😍😍😍