• 那是云首页
  • 快捷导航
  • 更多
    设为首页收藏本站
  • |
花生壳

八平台中秋版和老骥伏枥方法ESXI6.5下的硬盘挂载。

威联通 QNAP  / 教程分享  / 倒序浏览   © 著作权归作者本人所有

#楼主# 2018-10-6 20:48

跳转到指定楼层
本教程不适用于esxi6.7,官方说6.7有bug,板卡直通的问题需要下个版本修复。

一般的情况下可以参考
黑威联通 TS-653B 4.3 ESXi 6.0 6.5 6.7安装教程
http://www.nasyun.com/forum.php? ... 3&fromuid=63699
(出处: NAS云论坛)
用IDE接口来挂硬盘,对于对性能要求高的玩家来说,硬盘直通才是王道。
硬盘直通有两种,一种是RDM一种是PCIE板卡直通。 RDM的方法很简单,将硬盘直通为一个RDM格式的虚拟盘*.vmdk.然后像使用虚拟硬盘一样的使用IDE挂载。

今天主要讲的是板卡直通。PCI passthrough.
qnap支持大部分的SATA卡,因此对于挂不上硬盘的玩家来说,使用外置SATA卡挂载是个好选择,老骥伏枥版本里面也不用修改hardware_check文件里面的SATA为IDE
直接打包就一般可以用。

最近国庆折腾了几天,主要是挑战难度,有些板卡挂载,特别是主板板载SATA挂载的时候直接进入初始化界面提示找不到硬盘。这种情况也分两种:
1.确实qnap不支持板卡,没有驱动
2.没有挂载到指定pcie槽。
检查是否没有驱动的笨方法是,进入初始化界面提示找不到硬盘的时候使用SSH登陆后台,然后ls -al /dev/sd* , 看看硬盘是否完全识别不到。
如果里面只有启动盘,对不起,我也不懂怎么编译驱动,这个问题留给其他大神吧。
今天要说的是,明明有驱动支持,但还是挂载不到的情形。

我使用的是Dell T630服务器主板,板载c610SATA卡。在kvm中可以直接直通,在ESXI中,一直是显示的灰色,我原本以为灰色没办法直通,后来网上找教程。发现了直通的方法。SSH进入esxi后台lspci -n 找到SATA 的厂商和设备编号等。 然后编辑 /etc/vmware/passthru.map文件,可以手动强行直通这个设备。
使用lspci | grep SATA查看你的板载sata设备,然后记住设备的pci槽号码,使用lspci -n后用相应的pci槽号找到厂商编号和型号
# Intel 82579LM Gig NIC can be reset with d3d0
8086  1502  d3d0     default
# Intel 82598 10Gig cards can be reset with d3d0
8086  10b6  d3d0     default
8086  10c6  d3d0     default
8086  10c7  d3d0     default
8086  10c8  d3d0     default
8086  10dd  d3d0     default
# Broadcom 57710/57711/57712 10Gig cards are not shareable
14e4  164e  default  false
14e4  164f  default  false
14e4  1650  default  false
14e4  1662  link     false
# Qlogic 8Gb FC card can not be shared
1077  2532  default  false
# LSILogic 1068 based SAS controllers
1000  0056  d3d0     default
1000  0058  d3d0     default
# NVIDIA
10de  ffff  bridge   false
# SATA
8086  8d62  d3d0    false
8086  8d02  d3d0    false


看这个表,8086是intel代表,8d62和8d02代表两个板载sata卡的型号, 其他d3d0 和 false照填。
填好这个文件保存之后重启,这个设备就将不再灰色,可以用web client界面设置直通了。

直通给设备之后还有坑。基本有两个,
1.需要修改启动盘里面的initrd.boot文件中间包含的/etc/model.conf.
这个如果对老骥伏枥教程熟悉的同学应该知道,使用母盘,挂载sda2分区,拷贝/mnt/sda2/boot/initrd.boot 然后unzip和 cpio解包,
修改完了再原路打包拷贝回去。
这个文件是硬盘挂载的关键,里面标注的pci槽必须和虚拟机里面相应sata或者ide设备的槽位一致。
比较简单的方法是使用老骥伏枥的母盘,确实是非常好用的工具,我用来修改了非老骥伏枥教程里面的o大出品的八平台中秋版等固件,也是一样好用。
使用母盘的时候,在做固件的时候或者repack的时候先修改hardware_check文件,将里面的“SATA”修改成你目前的挂载方式,如果是ide就改成“IDE”
如果是板载sata卡像我的是C610,为了不让虚拟机其他sata被绑定,可以将“SATA”改为"C610",总之找到一个lspci中显示槽位那一行独一无二的关键字就好,
就能自动打包了。
2.这一步比较难,花了我至少两天时间找到。之前我修改model.conf都能成功,但昨天直通C610板载之后发现修改了model.conf似乎没有效果。
调试了很久才发现。model.conf里面的pci槽位,也就是qnap支持的硬盘控制器必须挂载在primary bus.通俗点说就是前面B00这两个数字必须为0,
这就很麻烦了,必须要修改虚拟机设置,让虚拟机的pci槽重新排位。
比较简单的方式是,修改虚拟机.vmx文件,在其中加入类似pciPassthru0.pciSlotNumber = "16"这样的语句。
对于我的机器,还碰到一个坑是,加入这一行了似乎一点作用都没有。找了很久最后发现,是直通的板载sata卡不是pcie接口,默认是pcie。所以无效
最后的解决办法是在.vmx文件里面再加一行:pciPassthru0.virtualDev = "pci"     ,这样保证板卡是以pci方式启动。槽位得到了修改。
这些全部搞完遇到了最后一个大坑。esxi6.5的bug:
目前的情况是,只要虚拟机文件.vmx里面有pciPassthru0.virtualDev = "pci"这一行,在esxi浏览器界面里面查看和修改虚拟机的时候就会crash.需要重新reload页面。
不过没关系,只是不能修改而已,启动关闭都正常。所以修改好所有虚拟机配置,最后加入这一样。需要的时候去掉这一行修改,再重新加回来。

我第一次写教程。没有截图。希望大家体谅。





那是云论坛 - 国内知名的NAS交流平台
http://www.nasyun.com
分享淘帖
回复 印象

使用道具

0

精华

184

回帖

1613

积分

发烧玩家

Rank: 2

云币
0
贡献
134
活跃
851
精华
0
tyy474 发表于 2019-1-9 09:22 来自 中国广东云浮
虚拟机添加了6个硬盘给TS653B,我修改了配置文件的DEV PORT后面的数字,从0-5都填了,对应的B00也改了,开机识别的123456中的125位置,是哪里出问题了吗
回复 支持 反对 印象

使用道具 举报

0

精华

103

回帖

1987

积分

发烧玩家

Rank: 2

云币
0
贡献
24
活跃
1815
精华
0
oceansue 发表于 2019-3-9 21:28 来自 中国浙江嘉兴
本帖最后由 oceansue 于 2019-3-9 21:46 编辑

多谢分享
回复 印象

使用道具 举报

0

精华

18

回帖

268

积分

入门用户

Rank: 1

云币
0
贡献
0
活跃
259
精华
0
fasmot 发表于 2020-1-16 11:56 来自 中国四川内江
多谢分享多谢分享多谢分享多谢分享
回复 支持 反对 印象

使用道具 举报

0

精华

9

回帖

47

积分

入门用户

Rank: 1

云币
0
贡献
0
活跃
42
精华
0
states 发表于 2020-12-28 22:16 来自 中国湖南长沙
ESXI直通SATA后硬盘总是找不到,全网搜索最后在楼主这找到答案,就是PCI顺序问题,必须是0,太感谢了
回复 支持 反对 印象

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回列表 搜索 官方QQ群
懒人地图| 手机版|小黑屋| 智能生活 , 上那是云 |闽ICP备2020018196号-1 |网站地图