Jump to content

Qiaodows

Members
  • Posts

    17
  • Joined

  • Last visited

Posts posted by Qiaodows

  1. 由于我在UNRAID上安装了一个openwrt虚拟机,这个虚拟机作为主路由,在它启动前是没有互联网的,而经过验证,My Servers插件会在开机时因没网而卡住很久,导致整个网络恢复的所需时间也变长了。将My Servers卸载确实可以解决问题,但不是最佳方案,希望能有办法跳过网络检查访问或者做一些延迟。

  2. 如题,购入了一块usb拓展坞,本来想将整个拓展坞直通给win10虚拟机以实现usb热插拔,到货后发现无论是虚拟机编辑页面内还是hotplug插件都无法识别到usbhub。
    工具-系统设备-usb设备内识别正常,在hub上接usb设备识别正常
    应该如何操作以实现直通,是否需要编辑对应虚拟机xml文件?

    usbhub本质上是一个交换机,目前只能直通usb控制器,或者绑定usb设备
    所以最好的方案是,购买一张pcie usb卡


    从我的 iPhone 发送,使用 Tapatalk
  3. On 5/29/2022 at 12:11 AM, Loukaphilus said:

    大佬,我按照你的步骤进行,但是VNC窗口显示 Guest has not initialized the display(yet)  我是unraid 6.10.2   安装的是win11 机子是inter NUC 老虎峡谷11代U 

    是从新建启动开始就这样还是到哪个步骤?描述清楚一些。另外可以尝试只带VNC启动看看有没有画面。

    另外如果你要直通核显,11代可能不行,貌似最高支持10代

  4. 分享一下配置:

    CPU:i7-10700K

    主板:微星Z490 A-PRO

     

    给 Windows10 虚拟机分配8核时,无论怎么用都没问题;分配10核或12核时,只要系统处于低功耗状态,必定死机(比如锁屏)。此时连带局域网整个崩溃(有可能导致网络回环出错),拔网线后恢复正常。无法通过电源键正常关机,复位键也不能用,要关机基本上只能硬拔电源。

    初步判断是某种硬件缺陷,但是不确定问题在哪,改了BIOS设置各种地方也没好,换了各种UNRAID版本也没好,所以只能怀疑是硬件问题了。

  5. 日志:

    KVM internal error. Suberror: 1
    emulation failure
    RAX=fffff7b4c0001298 RBX=ffffac0a14341040 RCX=000000000000001b RDX=0000000000000000
    RSI=ffff9881cbb00180 RDI=000000000000000d RBP=0000000000000009 RSP=ffff968522e6ee30
    R8 =0000000000000008 R9 =0000000000000000 R10=0000000000000fff R11=ffff9881cb800180
    R12=0000000000000009 R13=0000000000000001 R14=0000000000000002 R15=0000000000000000
    RIP=fffff8042f487794 RFL=00010202 [-------] CPL=0 II=0 A20=1 SMM=0 HLT=0
    ES =002b 0000000000000000 ffffffff 00c0f300 DPL=3 DS [-WA]
    CS =0010 0000000000000000 00000000 00209b00 DPL=0 CS64 [-RA]
    SS =0018 0000000000000000 00000000 00409300 DPL=0 DS [-WA]
    DS =002b 0000000000000000 ffffffff 00c0f300 DPL=3 DS [-WA]
    FS =0053 0000000000000000 00017c00 0040f300 DPL=3 DS [-WA]
    GS =002b ffff9881cb800000 ffffffff 00c0f300 DPL=3 DS [-WA]
    LDT=0000 0000000000000000 00000000 00000000
    TR =0040 ffff9881cb80e000 00000067 00008b00 DPL=0 TSS64-busy
    GDT= ffff9881cb80ffb0 00000057
    IDT= ffff9881cb80d000 00000fff
    CR0=80050033 CR2=0000000000000000 CR3=00000000001ad000 CR4=00350ef8
    DR0=0000000000000000 DR1=0000000000000000 DR2=0000000000000000 DR3=0000000000000000
    DR6=00000000ffff0ff0 DR7=0000000000000400
    EFER=0000000000000d01
    Code=2c 90 9c 00 4b 8d 0c 64 0f 10 04 c8 0f 11 84 24 c8 00 00 00 <f2> 0f 10 4c c8 10 f2 0f 11 8c 24 d8 00 00 00 48 8b 0d d6 90 9c 00 c7 84 24 80 00 00 00 ff
    2021-11-26T12:59:34.530135Z qemu-system-x86_64: terminating on signal 15 from pid 5600 (/usr/sbin/libvirtd)
    2021-11-26 12:59:36.330+0000: shutting down, reason=destroyed

     

    疑似可能性:开启了核显+独显直通,目前正在排查

    如果是这样的话,以后都得用暂停代替了……

  6. 1 hour ago, kikibamboo said:

    主板并没有屏蔽核显,但是独显优先了,我设置了很多次,有时候正常,但是有时候又独显输出了

    目前的解决方案是只插核显,等unraid启动后再插独显的输出线。或者买一个DP/HDMI/KVM切换器,启动前切到核显,启动后根据自己的需要再选择切到核显还是独显

  7. 纵观整个论坛,尤其是简体中文板块,几乎没有类似的解决方案,即便有也是比较旧的了。

    本文基于 UNRAID 6.10.0-rc2 版本演示,实际上 6.9.2 也是可以的,不过只有在 6.10.0-rc2 中才有对 Windows 11 的完整支持,如果需要安装 Windows 11 建议也升级至 6.10.0-rc2。

    大前提:BIOS中打开了Intel vt-x和vt-d(AMD端应该叫AMD-V和IOMMU),并且设置 IGD 为第一显示设备(也就是 BIOS 之类的默认从核显输出),且需要至少一个显示器连接到主板上的视频输出端口(也可以是欺骗器,总之需要系统识别到)。

    1. 直通核显

    实际上直通核显和独显并不严格要求顺序,如果对独显的直通没有信心,也可以先做直通独显。直通核显应该算是最难的了,建议先整(整不好可以直接劝退了哈哈哈)

    (1) 进入MAIN→Flash→Syslinux configuration→Unraid OS

    (中文版是主界面→Flash→Syslinux 配置→Unraid OS,看到右边绿色的那个框就对了)

    image.thumb.png.91fb3e1240347627b7de8843fe411305.png

    内容替换为:
     

    kernel /bzimage video=efifb:off vfio-pci.ids=8086:3185,8086:3198 disable_vga=1 modprobe.blacklist=i915,snd_hda_intel,snd_sof_pci,mei_me,snd_hda_codec_hdmi,snd_hda_codec_realtek
    append initrd=/bzroot

     

    其中,vfio-pci.ids=8086:3185,8086:3198 这一段,不同的CPU和主板都有所差异,以我的为例是:

    image.thumb.png.23b9d6f390af543b642beb9d04be355c.png

    有些CPU第二个设备是音频输出,其实都随意吧。这里试错成本也比较低,搞错了大不了再来一次(

    至于如何查看,可以先看第三点的地方。

    (2) 进入 SETTINGS→VM Manager→ADVANCED VIEW

    (中文版:设置→虚拟机管理器,然后点一下右边的高级视图)

    设置如下属性:
    PCIe ACS override: Downstream
    VFIO allow unsafe interrupts: Yes

    中文版如图所示:

    image.png.4ebf0b85628dac8fa6dd09be77c99d46.png

    (3) 前往TOOLS→System Devices

    (中文版:工具→系统设备)

    把刚刚填的vfio-pci.ids对应的设备勾上即可。

    image.thumb.png.23b9d6f390af543b642beb9d04be355c.png

    (4) 重启主机,新建虚拟机,配置要求如下:

    Windows 最好使用 i440fx,Linux 最好使用Q35,都选最新版本。

    image.png.324e0baf98a83fc66e3650148975e5b2.png

    image.png.c5f87c815f4c1fb07495fea4442d8904.png

    其中,VNC 必须先行保留,因为显卡可能还驱动不起来,需要用 VNC 装系统。等装完系统,驱动程序也会自动安装,到时候可以将第一显卡设为核显,不需要保留 VNC。图形 ROM BIOS 需要从这里下载:https://github.com/my33love/gk41-pve-ovmf,并且放在自己知道的地方,把路径填到该选项中。如果不指定图像 ROM BIOS,大概率是无法正常输出视频的。貌似 Intel 核显都可以用这个,所以不需要查型号了,如果有不可用的情况请回复到帖子中。

    其他的设置根据自己的喜好或者用默认设置即可。

    (5) 启动虚拟机,安装系统,最后等 Windows 自动安装驱动即可。如果使用 Windows 8.1 及以下操作系统,大概率是需要自己手动下载驱动程序的(而且不一定有兼容低版本操作系统的驱动程序),所以还是建议直接 Windows 10 或 Windows 11。

     

    核显部分就到这里,接下来是较为容易的独显部分。

    2. 直通独显

    这一部分没有太多讲究,也可以完全不按我的步骤来做,不过为了确保尽可能一次成功还是按步骤来做。

    (1) 前往TOOLS→System Devices

    (中文版:工具→系统设备)

    将显卡对应的框勾上,例如:

    image.thumb.png.b3ac5310ef11d4945cd83181fd0e7d2f.png

    可能会有很多子设备,但是没关系,一般来说不需要配置它们,让它们自动勾上就行了。(如果需要声音输出可以在声卡一项选择)

    (2) 创建虚拟机,配置随意,但是 BIOS 最好选 OVMF/OVMF TPM。

    显卡选择跟核显的差不多,不过图形 ROM BIOS 一般来说可以留空,但是部分显卡可能无法正常启动或者驱动报43错误,这种情况下就需要整 vbios 了。由于感觉比较麻烦(需要一个打好驱动的物理机系统,用GPU-Z导出vbios,也许还需要小小修改一下),我这里就放弃了一些显卡。不过至少我的 GTX 1660 SUPER 还是可以正常驱动的,就不需要指定了。(GT 740 无法驱动,懒得整了)

    (3) 启动虚拟机,安装系统,安装独显驱动,然后看看设备管理器的显卡设备有没有叹号,没有的话就大功告成!

    (如果有的话,慢慢折腾吧,我也帮不了你)(尤其是万恶的43错误)

     

    那么核显和独显直通的分享就这么多了,希望能够帮到初入 UNRAID 的大家。我大概花了3天来解决这些问题,期间还更换过方案,最终还是定下核显+独显的方案(主要还是考虑到 PCIe 以后的分配问题),虽然在论坛里问了但是并没有人理我(哭哭),最后也是按着外面的教程一步步试错,最终总结出这样的步骤。当然也会有按我的步骤不行的人,我希望能够多多探讨,而不是直接丢下一个“没用”就拍拍屁股走人了,如果你真心想说这话的话,我建议你还是直接关掉这个帖子吧,此贴不适合这类言论。

     

    参考:

    https://www.right.com.cn/forum/thread-6006395-1-1.html

    https://github.com/my33love/gk41-pve-ovmf

    https://post.smzdm.com/p/ag8l254m/

    • Like 4
  8. 更新:使用双独显+核显的情况下,以核显启动unraid,然后启动两个直通不同独显的虚拟机,其中一个日志为 shutting down, reason=crashed,另一个为 shutting down, reason=failed。

    由于WEB界面死了,只能从命令行查,如图:

    IMG_0200.thumb.JPG.d1463babafcb2804803b700ef3053522.JPG

    太奇怪了,这两个设备应该没有被占用才对,把我整迷糊了

  9. 更新:将连接到核显的显示器拔除后,独显成为第一显示设备,然后令人恼火的事情出现了:直通独显的虚拟机无法启动,提示Device or resource busy。然而当我关机后重新插上连接到核显的显示器后,开机启动虚拟机,又可以使用了。这是否跟unraid占用了第一显示设备有关?如果是的话,有办法解决吗?谢谢。

  10. 版本: 6.10.0-rc2

    首先,我直通了一张N卡,是正常的,并且启动其他不使用直通显卡的虚拟机也能正常启动。

    然后,关闭其他虚拟机,新建另一个虚拟机尝试直通核显,日志如下:

    279204183_QQ20211114222848.thumb.png.927fe04c63f2afcdf3d96345c0f04cd7.png

    可以正常显示,但是当我启动另一个之前正常直通的虚拟机,提示如下,并且导致所有虚拟机强制终止:

    1729147789_QQ20211114223055.png.c6311dac4033ab0b09229844c7a0bff3.png

    我第一反应可能是主板或者CPU的问题,所以我尝试再接一块显卡来测试,但是这次WEB界面直接死掉了,只能按电源键来关机(是正常关机,不是长按,也就是说UNRAID并没有死掉,只是WEB界面死了)。

    这使我非常困惑,是否是我哪里设置有误,或者是一些bug。如果能解决我的困惑,真的感激不尽!

    附上:

    1. 虚拟机设置

    直通核显:

    234660009_QQ20211114223241.png.f083feb1c689414927e042f2fb18b042.png

    直通独显:

    290679079_QQ20211114223316.thumb.png.fa578ab633d60b9c5e7dd5ae78f933c3.png

    2. 硬件屏蔽设置

    192_168_123.229_Tools_SysDevs.thumb.png.d3b3fe5a055b2e2d800eceeb76c2354f.png

    3. 硬件信息:

    CPU:i7-10700K

    主板:微星 Z490 A-PRO

    显卡:Nvidia Geforce 1660 SUPER

×
×
  • Create New...