本文作者:百花齐放

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备

百花齐放 2020-04-16 25317 9条评论
unRaid系列七:直通网卡、硬盘和其它PCI硬件设备摘要: 此文将全面阐述如何直通各硬件设备给虚拟机的方法,在这里,我们将展开直通网卡和硬盘的方法,其中网卡又分直通板载网卡和直通PCI网卡,PCI网卡又分全直通和分组直通,直通硬盘这里采用的...

此文将全面阐述如何直通各硬件设备给虚拟机的方法,在这里,我们将展开直通网卡和硬盘的方法,其中网卡又分直通板载网卡和直通PCI网卡,PCI网卡又分全直通和分组直通,直通硬盘这里采用的是折中的方法,没有涉及到阵列卡的直通,只是直通相应的硬盘,这样操作起来更简便,另外将其它的PCI设备直通方法也介绍一下,首先我们以安装黑群晖来进行举例来展开讲。

一、安装黑群晖

这个网上有很多教程,我也就直接引用司波图的B站教程,说的非常详细,里面也会带出来直通的相应的教程,可以做为参考的,

地址如下:司波图 UNRAID 陪玩教程 05

视频里面,有演示,通过虚拟机安装群晖NAS后:

在直通硬盘和直通网卡的情况下,可以有效减少 UNRAID 的硬盘占用。家用媒体服务器NAS 使用UNRAID系统的正确的玩法!直通网卡、直通硬盘、挂载群晖虚拟机文件! 

当虚拟机安装了群晖NAS,并且直通硬盘,不过未直通网卡: 速度可以跑到80m/s,占用的资源并不多:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第1张

二、直通硬盘

我们安装好群晖时如果不直通硬盘,那样会占用非常大的CPU,不利于使用,这样我们需要将硬盘直通给虚拟机用,比如直通硬盘给黑群晖用,当然这里的直通不是严格意义上的硬件直通,只能说是相应的将硬盘专门映射给虚拟机用,它不能使用将阵列卡直通,具体方法是,我们先用指令找到硬盘ID,然后通过输入相应的设置,将硬盘进行直通

首先我们用unraid自带的终端输入以下命令:

ls /dev/disk/by-id

找到需要直通的硬盘,将其整个复制下来:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第2张

这里我们直通的就是如图的磁盘:

当然要能挂载未加入unraid阵列的磁盘

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第3张

当然我们需要挂载未加入阵列的硬盘还需要安装插件devices:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第4张

查到后我们需要到虚拟机配置中添加硬盘,如图:

其中硬盘直通的代码为:

ls /dev/disk/by-id/ata-ST4000VN008-2DR166_WE20OV7P



unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第5张

这样就能将硬盘直通给虚拟机了,这里是直通给了黑群晖,非常方便的直通硬盘

三、直通网卡(全直通)

直通网卡分两种直通,一种是直通板载网卡,一种是直通独立网卡,这两种都是全直通,比如你板载网卡是两个网口的或者PCI网卡是四个网口的,这里讲的是全部直通过去,后面再讲如何分组

1、直通PCI网卡

我们在正常添加配置完虚拟机后,需要打开XML设置:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第6张

然后将涉及网卡的那部分删除:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第7张

然后勾选相应的网卡即可:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第8张

2、直通板载网卡

如果需要直通板载的硬件,比如网卡,必需使用一个插件来禁用Unraid来调用它,这个插件是VFIO PCI Config,没错就是这个神器,我们可以在app商店里面进行安装:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第9张

安装后只需将相应的硬件勾选禁用重启即可:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第10张禁用以后就能在后面虚拟机中添加板载网卡了,不过注意的是在做这个之前,你需要有一个网卡给unraid用

如果因为网卡设置无法进入unraid怎么办?我们可以在终端启动项中选择第二项guip来恢复之前的设置

3、直通PCI网卡报错处理

在直通网卡后启动时会报错,这个怎么办呢,我们可以到可以到VM高级设置中开启PCI ACS模式,大多数选择downstream,而我的GEN8选择的是Multi-function,这个看大家去测试

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第11张

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第12张

四、分组直通

为什么要分组直通呢,这是因为你可能将网卡直通给不同的虚拟机,而现在如果不分组,那么将会把PCI的所有网卡都直通给一个虚拟机,那样比较浪费,比如我就将GEN8的板载双网卡分组,一个给unraid用,一个直通给黑群晖用,这样就需要分组直通,这就需要直通,(GEN8因为是老款设备还需要HMS,这样才能正常启动),我们先来对照分组前后就知道了区别了:

分组前:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第13张

分组后:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第14张

一,覆盖U盘原文件

分组这个需要替换U盘里面的文件,替换的为六个文件(三组):bzfirmware  bzfirmware.sha256  bzimage  bzimage.sha256  bzmodules  bzmodules.sha256 复制到unraid系统u盘并覆盖原文件

然后settings -- vm Manager --  PCIe ACS override: 开启  Downstream,这样就可以重启开通分组直通了,分组的附件下载链接:

登录访问
本站用户 免费查看
登录账号
您未登录,请登录注册后查看

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第15张

二,板载网卡的分组直通

板载网卡开通分组直通后,没法在虚拟机配置里直接勾选相应的网卡,这里需要到XML里面去添加相应的设置:

</memballoon>
  </devices>
  <qemu:commandline>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=01:00.0,bus=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=01:00.1,bus=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=02:00.0,bus=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=02:00.1,bus=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=07:00.0,bus=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=08:00.0,bus=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=09:00.0,bus=root.1'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='vfio-pci,host=0a:00.0,bus=root.1'/>
  </qemu:commandline>
</domain>

或者单个 需要增加硬件,就增加<qemu:arg value='vfio-pci,host=0a:00.0,bus=root.1'/>的行数即可。其中01:00.0就只是需要直通的设备号:

比如我将GEN8的一个网卡直通给黑群晖,那么就是:

<qemu:commandline>
   <qemu:arg value='-device'/>
   <qemu:arg value='vfio-pci,host=03:00.1,bus=root.1'/>
 </qemu:commandline>


unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第16张


设置完成后就自动勾选了,如:

unRaid系列七:直通网卡、硬盘和其它PCI硬件设备 unRaid&PVE 第17张

总结:这些直通硬件和分组直通都适用于其它的硬件设备直通,这样直通后就和物理机完全一样了,所以非常的方便,以达到最大利用化硬件的作用,大家慢慢研究。








文章版权及转载声明

作者:百花齐放本文地址:https://www.huakings.cn/post/235.html发布于 2020-04-16
文章转载或复制请以超链接形式并注明出处花王网络

赞(1)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

阅读
分享

发表评论

快捷回复:

评论列表 (有 9 条评论,25317人围观)参与讨论
网友昵称:stingtam
stingtam 铁粉沙发
2020-04-17 回复
请问大佬,unraid能直通usb网卡吗?
网友昵称:百花齐放
百花齐放 博主
2020-04-20 回复
@stingtam 可以的。
网友昵称:relic
relic 铁粉椅子
2020-05-31 回复
十分感觉大佬的教程,我的也是microserver gen8,下载了分组的附件替换后,在6.8.1上也能成功把板载网卡分开直通了。
网友昵称:百花齐放
百花齐放 博主
2020-06-01 回复
@relic 没事,能帮到你,我感得非常高兴。
网友昵称:relic
relic 铁粉板凳
2020-05-31 回复
十分感谢~~~
网友昵称:百花齐放
百花齐放 博主
2020-06-01 回复
@relic 好的。
网友昵称:vgenie
vgenie 铁粉凉席
2020-08-21 回复
学习了,我也是Gen8,之前买的寨i350-t4怎么都不识别,后来买了个i340-t4终于识别了,另外想问下HMS是个啥?
网友昵称:vgenie
vgenie 铁粉
2020-08-22 回复
@vgenie 没搞掂pcie网卡的直通。。。i340-t4不知道怎么分组。。。虚拟机启动不了
网友昵称:haojiayu
haojiayu 铁粉地板
2022-04-21 回复
我的也是gen8,替换文件后,阵列启动不起来了,这是为啥?