我爱帮助网--QQ交流群号

Nas交流与矿渣群(unraid 群晖 猫盘 蜗牛等):372167400         物联网/智能家居群:518812757             帮助教程:手册大全

软件使用与建站群:1057308983      虚拟化交流群:13448651

Unraid虚拟机管理

2020-02-23 13:09:00
Unraid官网-tmtony翻译
转贴
7330

可参考文章:Unraid 6 虚拟机管理 https://www.52help.net/book/unraid/66.html

Libvirt.png 使用虚拟机

尽管Docker容器是运行基于Linux的应用程序(如媒体服务器,备份软件和文件共享解决方案)的首选机制,但虚拟机增加了对非Linux工作负载的支持以及使用主机无法使用的设备的能力(认为图形可以通过,USB直通/分配等)。  本地化虚拟化是我们支持VM的方法,其中分配给来宾的所有资源对于主机都是本地的。

有关已测试与Unraid Server OS一起使用的操作系统的信息,请参阅VM Guest Support Wiki页面。

先决条件

待定

系统准备

在开始创建虚拟机之前,必须完成一些准备工作。

调整BIOS设定

为了利用Unraid 6的所有虚拟化功能,必须确保正确配置BIOS以进行硬件辅助虚拟化以及IO内存映射(支持HVM / IOMMU)。在您的BIOS设置中,查找标记有VirtualizationIntel VT-xIntel VT-dAMD-VAMD-Vi的所有内容,并将其设置为Enabled

Bios-virtualization1.png  Bios-virtualization2.jpg  Bios-virtualization3.JPG  Bios-virtualization4.png

在各种主板BIOS屏幕上可以找到虚拟化设置的示例。

配置网桥

虚拟机可以通过两种方法访问基于主机的网络:通过libvirt管理的专用NAT桥接或直接通过Unraid管理的公共桥接。libvirt启动时,将自动配置专用网桥(virbr0)。可以通过Unraid webGui上的“  网络设置”页面创建公用网桥(br0)。

专用网桥会生成一个内部DHCP服务器/地址池,以自动为VM创建IP,但是VM将位于无法被其他设备甚至Unraid上的其他服务访问的子网中。如果希望您的VM与Internet访问和主机的网络文件共享协议之外的所有其他网络服务完全隔离,则这种类型的桥接是理想的。可以通过浏览器提供的VNC会话执行VM管理。

公用网桥为VM提供来自路由器的IP地址,但在内部桥接VM之间以及彼此之间以及主机之间的通信。如果您希望您的VM像网络上的另一台设备一样运行,则可以在LAN路由器而不是在VM内部管理它的网络访问,这种类型的桥接是理想的。我们会为您创建的虚拟接口保留MAC地址设置,以确保VM每次连接时都应获得相同的IP地址,只要路由器管理的DHCP池不会用完地址即可。因此,如果要从另一台PC,便携式计算机,平板电脑或其他类型的设备连接到VM,则应使用公共网桥。

在“ VM设置”页面上,可以将您喜欢的任何网桥定义为“  默认网络网桥

虚拟化的用户份额

默认情况下,Unraid将创建两个用户共享,以用于Unraid上的虚拟化。一个共享用于存储安装媒体文件(ISO),另一个共享用于存储虚拟机本身(域)。如果还没有共享用于备份,则可以考虑添加一个共享来备份虚拟机。

共享配置建议

  • 当虚拟机的主虚拟磁盘存储在仅缓存的共享中时,其性能最佳。
  • 尽管虚拟机不需要SSD,但使用它们可以显着提高性能。
  • 对于您的ISO库共享(包含安装媒体),高速缓存的使用是可选的。

重要提示:不要对存储在一个共享的活动虚拟机使用缓存 设置为。这样做将导致您的VM在调用移动程序时被移动到阵列中。

设置虚拟化首选项

在开始创建虚拟机之前,我们需要执行一些配置步骤:

  • 使用您的Web浏览器导航到“  VM Manager设置”页面( “设置” ->“  VM Manager”
  • 对于Windows VM,您将需要下载虚拟驱动程序以用于存储,网络和内存。
    • 在此处下载最新的“稳定” VirtIO Windows驱动程序ISO,网址为:https ://fedoraproject.org/wiki/Windows_Virtio_Drivers#Direct_download
    • 将驱动程序的ISO文件复制到您之前创建的ISO库共享中
    • 使用VirtIO Windows Drivers ISO的文件选择器选择复制的ISO文件
    • 您可以基于每个VM覆盖默认驱动程序ISO(在Advanced View下)。
  • 选择virbr0(默认)作为 专用网桥,或者选择在“  网络设置”页面上创建的 公用网桥
    • 您可以基于每个VM覆盖默认的网桥(在Advanced View下)。
  • 如果您希望将多个PCI设备分配给不同的虚拟机,请将 PCIe ACS Override切换为On
    • 覆盖将IOMMU组分开,因此可以将各个设备分配给不同的虚拟机
    • 如果未启用此设置,则可能无法同时将设备传递到多个虚拟机
    • 警告:此设置是实验性的!使用时要小心。 [1]
  • 完成后单击“ 应用”以应用设置

创建自己的虚拟机

完成准备步骤后,您可以通过从“  虚拟机”页面单击添加 虚拟机来创建第一个 虚拟机

基本虚拟机创建

默认情况下,webGui将显示创建虚拟机所需的最少字段数。

  • 模板类型设置为自定义
  • 给虚拟机命名描述
  • 如果希望虚拟机自动启动阵列,请切换自动启动设置
  • 选择您要使用的操作系统,这还将调整用于虚拟机的图标
  • 选择要分配虚拟机的 CPU
    • 您最多可以选择主机上存在的物理CPU
  • 指定您希望分配虚拟机的 初始内存量
  • 选择一个OS Install ISO作为安装介质
  • 指定您要创建的虚拟磁盘(或选择现有的虚拟磁盘)
    • 主虚拟磁盘用于存储你的虚拟机的操作系统
    • 可以通过单击添加其他虚拟磁盘 Add-device.png
  • 指定用于与VM交互 的图形卡
    • 如果您 分配物理图形卡,请指定VNC
    • 如果 均按同一个物理显卡,从列表中选择它
    • VNC只能指定为主要图形显示,或者根本不能分配
    • 可以为VNC连接指定密码
    • 并非所有图形卡都可以用作辅助显示器
    • 如果您分配物理图形设备,请确保也分配USB键盘和鼠标
    • 可以通过单击分配其他图形设备  Add-device.png
  • 分配声卡,如果你分配一个显卡在你的虚拟机获得音频支持
    • 大多数GPU都有自己的内置声卡,作为用于HDMI音频的图形卡的功能
    • 可以通过单击分配其他声卡  Add-device.png
  • 可以将USB设备分配给插入主机的VM
    • 当前不支持USB热插拔,因此必须在启动VM之前连接设备,以使USB正常运行
    • 某些USB设备在传递给访客时可能无法正常工作(尽管大多数设备工作正常)
    • 此处未显示Unraid USB闪存设备,以防止意外分配
  • 单击“ 创建虚拟机”以创建您的虚拟磁盘(如有必要),除非您取消选中“ 创建后启动虚拟机”复选框,否则它将自动启动

高级选项

如果您希望切换虚拟机的其他高级设置,则可以从“ 基本视图”切换到“ 高级视图”(位于 “  添加虚拟机”页面的“  模板设置”部分栏上的开关)。

  • 您可以调整CPU模式设置
    • 主机直通将使访客获得主机CPU的所有功能(这可以显着提高性能)
    • 仿真将使用QEMU仿真的CPU,并且 不会将客户机暴露给主机处理器的所有功能
  • 指定最大内存值将启用内存膨胀,从而允许KVM根据需要动态收缩/扩展内存分配。
    • 此功能不适用于已分配了物理PCI设备(GPU,声音等)的VM。
  • 可以在QEMU的i440fxQ35芯片组 之间切换显示给VM 的计算机类型
    • 对于基于Windows的VM,i440fx是默认设置,仅当您难以通过基于PCI的图形卡传输时才应更改(这可能会提示Windows重新激活)
    • 对于基于Linux的VM,Q35是默认设置,如果通过GPU,则不应更改
  • BIOS只能调整添加新的虚拟机时(现有VM不能修改这个设置)。
    • SeaBIOS是用于创建大多数虚拟机的传统VGA BIOS
    • OVMF利用UEFI BIOS接口,消除了传统VGA的使用
    • OVMF要求VM的操作系统支持UEFI(Windows 8或更高版本,大多数现代Linux发行版),并且如果您希望分配物理图形设备,它也必须支持UEFI
  • 如果将Windows指定为客户机操作系统,则可以切换Hyper-V扩展对VM的显示方式
  • 您可以选择覆盖默认为Virtio驱动程序ISO应你愿意的话
  • 您可以在RAW和QCOW2之间切换虚拟磁盘类型(建议使用RAW以获得最佳性能)
  • 借助基于Linux的VM,您可以将多个VirtFS映射添加到来宾中
    • 有关VirtFS和9p文件系统的更多信息,请访问此处:http ://wiki.qemu.org/Documentation/9psetup
  • 如果需要,可以修改VM虚拟网络接口的网络MAC地址,并指定备用网络桥
    • 您可以单击蓝色刷新符号为虚拟网络接口自动生成新的MAC地址。
    • 可以通过单击来分配其他虚拟网络接口  Add-device.png

将图形设备分配给虚拟机(GPU直通)

可以将GPU分配给虚拟机以进行直接I / O控制的功能还包括一些其他规定:

  1. 并非所有主板/ GPU组合都适用于GPU分配。
  2. 集成图形设备(板载GPU)目前无法分配给虚拟机。
  3. 可以在此电子表格中找到其他经过社区测试的配置。
  4. Lime Technology在Wiki中提供了经过验证和测试的硬件组合的列表。
  5. 您还可以在Lime Technology社区论坛中讨论硬件选择。

有关虚拟功能I / O(VFIO)和GPU传递的其他信息,可以在项目维护者Alex Williamson的以下常见问题解答中找到。

警告:通过GPU传递到基于SeaBIOS的VM将禁用控制台VGA访问

如果您依靠本地连接的显示器和键盘直接与Unraid终端进行交互,则在创建分配了GPU的SeaBIOS VM之后,您将失去此功能。这是由于VGA仲裁错误所致,无法解决。这不会影响您使用telnet或SSH会话访问控制台的能力,但是直接对本地控制台的访问将似乎被冻结(光标闪烁,但对键盘输入无可见响应)。与将离散GPU传递给VM相比,是否在控制台上使用板载图形都没有关系。但是,使用OVMF时,不会使用VGA,因此不需要仲裁,因此您的控制台图形将保持不变。请注意,并非所有GPU都支持OVMF,因为OVMF需要GPU上的UEFI支持。

救命!无法为容器设置iommu:不允许操作

如果在尝试将图形设备分配给VM时收到上述消息,则很可能该设备与系统上的另一个活动/正在使用的设备一起在IOMMU组中。如果您希望更好地了解此问题及其对您的影响,请参阅Alex Williamson在IOMMU组上撰写的这篇文章。在 “设置” ->“  VM管理器”下,您会找到一个选项以切换PCIe ACS Override,这将强制将每个设备分成其自己的IOMMU组(在系统重新引导之后)。此设置是实验性的,因此请谨慎使用。

这里的另一种可能性是您的系统不支持中断重新映射,这对于VFIO和GPU传递至关重要。对此有一个解决方法,但是您将无法防止来宾受到来宾的基于MSI的中断注入攻击(有关通过VT-d进行MSI注入攻击的更多信息)。如果您完全信任VM guest虚拟机及其中的驱动程序,则启用此替代方法应可解决此问题。另一种选择是购买提供中断重新映射支持的硬件。要启用此解决方法,您将需要修改syslinux.cfg文件,并在下面添加粗体:

 标签unRAID OS 菜单默认 内核/ bzimage 附加vfio_iommu_type1.allow_unsafe_interrupts = 1 initrd = / bzroot 

救命!我可以在分配了GPU的情况下启动VM,但是我得到的只是监视器上的黑屏!

如果未收到错误消息,但是启动VM时显示未“点亮”,则表示在正确分配设备后,主板或GPU可能会出现问题,无法正常显示VGA仲裁的发生。您可以采取几种措施来解决此问题:

  • 引导进入主板BIOS,并确保您的主要图形未设置为您希望通过的卡(最好的选择是将其设置为集成图形,即iGPU;确保它不是PCI或PCIe)。
  • 确保您的主板BIOS  视频卡BIOS是最新的。
  • 将新的VM从 SeaBIOS添加到 OVMF时,请尝试在Advanced View高级视图)下调整BIOS(创建后,现有VM不能更改此设置)。
  • 编辑或添加VM时,请尝试在“ 高级视图”下将“ 计算机类型”i440fx调整为 Q35
  • 作为最后的选择,您可以尝试通过编辑VM的XML手动为视频卡提供ROM文件(请参阅以下过程)。

编辑VM的XML以手动提供GPU ROM

  • 在另一台PC上,导航到以下网页:http : //www.techpowerup.com/vgabios/
  • 使用优化搜索参数部分从数据库中找到您的GPU。
  • 下载适合您的视频卡的ROM文件,并将该文件存储在Unraid中的任何用户共享上。
  • 在虚拟机停止的情况下,单击虚拟机的图标,然后从上下文菜单中选择“ 编辑XML ”。
  • 滚动到XML的底部并找到此部分(<address>对于您而言,这些部分可能与下面的示例有所不同):


<hostdev mode='subsystem' type='pci' managed='yes'>
     <driver name='vfio'/>
     <source>
       <address domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
     </source>
     <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
   </hostdev>
  • 在</source>标签之后,添加以下代码:

<rom file='/mnt/user/sharename/foldername/rom.bin'/>

  • 将/ mnt / user /之后的路径更改为romfile的实际用户共享/子文件夹路径。

完成XML的编辑后,单击“ 更新”,然后尝试再次启动VM,以查看GPU分配是否正常工作。

物理到虚拟机的转换

如果您希望将现有的物理PC或服务器转换为可在unRAID 6上使用的虚拟机,则过程非常简单。步骤1-3适用于几乎所有基于Linux的现代客户机。步骤4-6适用于基于Windows的来宾。

先决条件

  • 在Unraid Server OS 6上使用虚拟机之前,您的系统必须满足硬件要求并完成这些准备步骤。
  • 阵列中单个存储设备上必须有足够的磁盘空间(高速缓存池中的总可用空间),其大小等于或大于要转换的物理磁盘。
  • 强烈建议您在进行转换之前,对最重要的文件进行完整备份。

步骤1:使用Unraid webGui识别要转换的磁盘

  • 在阵列停止的情况下,将要转换的物理磁盘连接到服务器(SATA和电源)
  • 使用浏览器登录到用于unRAID 6的webGui(默认为Mac OS X设备上的http:// towerhttp://tower.local
  • 单击主要选项卡。
  • 如果尚未启动该阵列,请单击“ 启动”以启动它。
  • 在“主要”选项卡上的“ 未分配的设备”部分中找到您的磁盘设备。
  • 在标识列下,通过字母句柄(例如sdb,sdc,sdd,sde等)注明磁盘ID 。
  • 还要注意大小,因为在可用的阵列设备或缓存(池)上至少需要这么多可用空间来创建新的虚拟磁盘。

步骤2:从“ VMs”选项卡添加新的虚拟机

  • 使用浏览器(默认为Mac OS X设备上的http:// towerhttp://tower.local)登录到Unraid 6的webGui
  • 单击“ VMs”选项卡(如果该选项卡不可见,则说明您尚未完成这些准备步骤或可能不满足这些硬件要求;请发布一般支持以获取进一步的帮助)
  • 单击添加虚拟机按钮。
  • 请遵循本指南来创建您的VM,并确保遵循以下特定设置:
    • BIOS设置保留为SeaBIOS。
    • 将“ 操作系统安装ISO”留空。
    • 确保指定了VirtIO驱动程序ISO,以后将需要它们。
    • 使主虚拟磁盘的大小足以容纳要复制的物理磁盘。
    • 如果转换包含Windows操作系统的磁盘
      • 通过单击绿色加号添加第二个虚拟磁盘
      • 将第二个虚拟磁盘的大小设置为1M
      • 取消选中创建后启动VM的选项

步骤3:将磁盘转换为映像

  • 使用支持telnet或SSH的客户端,通过局域网连接到您的unRAID系统。默认用户名是root,默认情况下没有密码。
  • 输入以下命令以开始将物理磁盘转换为虚拟映像:

qemu-img convert -p -O raw /dev/sdX /mnt/user/vdisk_share/vmname/vdisk1.img

  • 更换sdX的与你在步骤1中记下的设备信手柄,更换vdisk_share与您创建用于存储虚拟磁盘,并更换共享虚拟机名称与你给它,当你在步骤2中创建它的名称。
  • 所述-p在一个百分比的形式标签将输出进度而转换正在发生。

步骤4:编辑虚拟机的XML(仅Windows Guest)

  • 在“虚拟机”选项卡中,单击“虚拟机”图标,然后从上下文菜单中选择“编辑XML”。
  • 向下滚动XML并找到<目标>的标签<磁盘><源>文件集到vdisk1.img,这将看起来像这样:


<disk type='file' device='disk'>
     <driver name='qemu' type='raw' cache='writeback'/>
     <source file='/mnt/cache/vdisk_share/vmname/vdisk1.img'/>
     <backingStore/>
     <target dev='hda' bus='virtio'/>
     <boot order='1'/>
     <alias name='virtio-disk0'/>
     <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
   </disk>
  • 通过将总线属性更改为<target>标记为ide来调整vdisk1.img 。
  • 删除该<disk>的整个<address>行。
  • 更正了以下XML示例:


<disk type='file' device='disk'>
     <driver name='qemu' type='raw' cache='writeback'/>
     <source file='/mnt/cache/vdisk_share/vmname/vdisk1.img'/>
     <backingStore/>
     <target dev='hda' bus='ide'/>
     <boot order='1'/>
   </disk>
  • 单击更新以更新虚拟机XML。

步骤5:从VM内部安装VirtIO驱动程序(仅Windows guest虚拟机)

  • 使用Windows File Explorer,导航到VirtIO虚拟CD-ROM以浏览其内容。
    • 导航到Balloon文件夹中。
    • 导航到以Windows操作系统版本(例如w8.1)命名的子文件夹。
    • 导航到amd64子文件夹
    • 右键单击其中的balloon.inf文件,然后从上下文菜单中单击“安装”(您可能需要启用文件扩展名的查看)
  • 对以下每个文件夹重复上述过程:
    • NetKVM
    • 暴力的
    • 维斯托尔
  • 安装完驱动程序后,再在虚拟CD-ROM内导航一次,然后打开guest-agent文件夹。
  • 双击qemu-ga-x64.msi以安装QEMU / KVM guest虚拟机代理。

步骤6:从您的VM中删除辅助虚拟磁盘(仅限Windows Guest虚拟机)

  • 如果尚未关闭您的VM,请关闭它。
  • 在“ 虚拟机”选项卡中,单击“虚拟机”图标,然后从上下文菜单中选择“ 编辑 ”。
  • 通过单击红色减号删除vdisk2.img虚拟磁盘。
  • 单击更新以更新VM。
  • 启动新转换的虚拟机!

额外:帮助!通过“从硬盘引导”卡在SeaBIOS上

如果您的操作系统是使用UEFI安装的(与传统的VGA BIOS相对),请从步骤3重新开始,但选择OVMF作为BIOS类型而不是SeaBIOS。大多数操作系统安装使用传统的VGA BIOS进行安装,但是也可以进行UEFI安装,在这种情况下,SeaBIOS将不起作用。其余转换过程相同。

在VM中使用物理磁盘,包括已安装OS的物理磁盘

使用物理磁盘创建VM的步骤与使用虚拟磁盘的步骤相似。但是,在两种使用情况下,一种将使用物理磁盘:创建具有物理磁盘且未安装OS的VM(新安装),而另一种已经安装了OS的虚拟机(转换)。我们将仅介绍从以前的安装进行转换,因为其他安装应该足够简单。您可以在任何操作系统上使用物理磁盘,但是此转换指南仅适用于Windows。

先决条件

  • 备用USB闪存驱动器
  • Acronis Universal Restore(或类似工具):

http://www.acronis.com/redirector/products/atih2016/aur?build=6569&edition=16&gaID=1987015932.2478000884&language=1&winver=10.0

  • 还建议您备份驱动器的映像,以防万一。我建议仅在命令行中使用dd。它非常易于使用,只需使用Google即可。

步骤1:准备磁盘

将装有Windows的硬盘驱动器从一台机器移动到另一台机器可能会出现问题,并且如果事先没有准备,则会导致蓝屏。这是由于机器硬件方面的差异。无论是物理机还是虚拟机,这都适用。因此,我们需要对Windows HAL或硬件抽象层进行更改。有几种工具可以完成,其中包括Windows本身内置的名为“ sysprep”的工具。但是,sysprep旨在用于在多台计算机之间克隆磁盘映像,并且在还原时将激活Windows OOBE(开箱即用的体验),这需要诸如用户帐户设置之类的事情,而其他更改对于我们的情况是不希望的且不必要的。因此,我们将使用Acronis的第三方工具(通用还原)。该软件有30天的免费试用期,

  • 下载并安装以下内容:http : //www.acronis.com/redirector/products/atih2016/aur?build=6569&edition=16&gaID=1987015932.2478000884&language=1&winver=10.0
  • 插入USB驱动器,打开程序,然后按照屏幕上的说明创建可启动的闪存驱动器
    • 选择“类似Windows的表示形式”
    • 没有Linux内核参数
    • 检查32位或64位,具体取决于您的硬件(或只是为了确保两者)
    • 选择您的USB设备
  • 创建可启动媒体后,重新引导计算机并引导到USB驱动器
  • 只需按照屏幕上的说明将通用还原应用于驱动器上的现有Windows安装。只需要一两秒钟。
  • 完成后关机,然后重新启动进入Unraid

步骤2:确定要在unRAID webGui中使用的物理磁盘

  • 使用浏览器登录到用于unRAID 6的webGui(默认为Mac OS X设备上的http:// towerhttp://tower.local
  • 单击主要选项卡。
  • 如果尚未启动该阵列,请单击“ 启动”以启动它。
  • 在“主要”选项卡上的“ 未分配的设备”部分中找到您的磁盘设备。
  • 在标识列下,通过字母句柄(例如sdb,sdc,sdd,sde等)注明磁盘ID 。

步骤3:从“ VMs”选项卡添加新的虚拟机

  • 使用浏览器(默认为Mac OS X设备上的http:// towerhttp://tower.local)登录到Unraid 6的webGui
  • 单击“ VMs”选项卡(如果该选项卡不可见,则说明您尚未完成这些准备步骤或可能不满足这些硬件要求;请发布一般支持以获取进一步的帮助)
  • 单击添加虚拟机按钮。
  • 请遵循本指南来创建您的VM,并确保遵循以下特定设置:
    • BIOS设置保留为SeaBIOS。(如果您在使用SeaBIOS启动VM时遇到问题,请使用OVMF重新创建它)
    • 将“ 操作系统安装ISO”留空。
    • 确保指定了VirtIO驱动程序ISO,以后将需要它们。
    • 选择“主虚拟磁盘”的位置和大小。名称和大小并不重要,因为我们将在下一步中对其进行更改。此步骤不是必需的,但是它使以后的编辑更加容易。
    • 取消选中创建后启动VM的选项

步骤4:为您的虚拟机编辑XML

  • 在“虚拟机”选项卡中,单击“虚拟机”图标,然后从上下文菜单中选择“编辑XML”。
  • 向下滚动XML并找到您分配的主虚拟磁盘。它将类似于以下内容:


<disk type='file' device='disk'>
     <driver name='qemu' type='raw' cache='writeback'/>
     <source file='/mnt/cache/vdisk_share/vmname/vdisk1.img'/>
     <backingStore/>
     <target dev='hda' bus='virtio'/>
     <boot order='1'/>
     <alias name='virtio-disk0'/>
     <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
   </disk>
  • 替换它,其中“ sdX”是步骤2中磁盘的位置:


<disk type='block' device='disk'>
     <driver name='qemu' type='raw' cache='writeback'/>
     <source dev='/dev/sdX'/>
     <target dev='hdd' bus='sata'/>
   </disk>
  • 如果您的物理磁盘是IDE而不是SATA,则将总线从“ sata”替换为“ ide”,然后重新评估您的生活选择。
  • 单击更新以更新虚拟机XML。

步骤5:安装驱动程序

  • 启动您的虚拟机
  • 在Windows中,一旦进入控制面板中的设备管理器
  • 如果有任何驱动程序有错误(黄色感叹号),请通过右键单击并选择“更新”来更新它们
    • 指向VirtIO Drivers ISO所在的驱动器,并确保选中“ include subfolders”框。
    • 对任何有错误的驱动程序执行此操作
    • 如果您有安装软件驱动程序的程序,例如某些防病毒程序,则可能需要重新安装这些程序。

额外:帮助!通过“从硬盘引导”卡在SeaBIOS上

如果您的操作系统是使用UEFI安装的(与传统的VGA BIOS相对),请从步骤3重新开始,但选择OVMF作为BIOS类型而不是SeaBIOS。大多数操作系统安装使用传统的VGA BIOS进行安装,但是也可以进行UEFI安装,在这种情况下,SeaBIOS将不起作用。其余转换过程相同。

从Xen转换为KVM

在Xen到KVM中运行的虚拟机将需要不同的过程,具体取决于它们是作为准虚拟客户机还是硬件虚拟客户机创建的。无论采用哪种转换方案,强烈建议您在继续操作之前创建现有Xen虚拟磁盘的副本。使用该副本测试转换过程,如果成功,则可以根据需要删除自己的基于Xen的虚拟磁盘。此外,您应该确保硬件支持硬件辅助虚拟化(Intel VT-x / AMD-V),因为这是与KVM一起使用的要求。Xen PV guest虚拟机没有利用硬件虚拟化扩展,这使得它们的转换过程比Xen HVM guest虚拟机向KVM转换的过程稍微复杂一些(在撰写本文时尚未进行记录)。

Windows转换步骤

要将Windows虚拟机从Xen转换为KVM,此过程非常简单,大约需要10分钟。开始之前,请删除通过Xen域cfg文件执行的所有PCI设备传递。转换过程完成后,可以重新添加这些设备。

步骤1:确定您的VM是否正在使用Xen的GPLPV驱动程序

  1. 在Xen VM中,打开Windows设备管理器(单击开始 ->右键单击计算机 ->单击管理
  2. 展开网络适配器的节点,并记下名称。如果网络设备的名称包含“ Xen”,则您正在使用GPLPV驱动程序。其他任何事情都意味着您不是。

注意:如果您不使用GPLPV驱动程序,则可以跳过接下来的几个步骤,并从重新进入KVM模式恢复该过程。

步骤2:为删除GPLPV驱动程序准备Windows

  1. 打开一个命令提示符,以管理员身份运行(单击开始 ->单击所有程序 ->单击附件 ->右键单击命令提示符 ->单击以管理员身份运行
  2. 在提示符下键入以下命令: bcdedit -set loadoptions nogplpv
  3. 重新启动您的VM

步骤3:下载卸载程序并删除GPLPV驱动程序

  1. 重新启动后,打开浏览器并下载以下zip文件:gplpv_uninstall_bat.zip
  2. 将uninstall_0.10.x.bat文件提取到桌面
  3. 右键单击该文件,然后单击“以管理员身份运行”(这将很快发生)
  4. 重新启动您的VM
  5. 重新启动后,再次打开Windows设备管理器
  6. 在“系统设备”部分下,右键单击“ Xen PCI设备驱动程序”,然后选择“ 卸载”,然后在确认对话框中,单击复选框以删除该设备的设备驱动程序软件
  7. 关闭虚拟机

步骤4:使用VM Manager创建一个新的VM

  1. 如果还没有,请按照此处记录的步骤启用VM Manager
  2. 单击虚拟机选项卡,然后单击添加虚拟机
  3. 给虚拟机起个名字,如果还没有,请下载VirtIO驱动程序ISO并指定它
  4. 操作系统下,确保已选择Windows。
  5. 在“ 主虚拟磁盘位置”下,浏览并选择您的Xen虚拟磁盘
  6. 添加第二个虚拟磁盘,并为其提供1M的大小(您可以将此虚拟磁盘放置在任何位置,这只是临时的)
  7. 将图形,声音等全部保留为默认设置,然后单击“ 创建”
  8. 创建后,立即强制关闭VM(单击VM页面中的弹出符号)
  9. 在VM旁边的VM页面中单击</>符号以编辑XML
  10. 找到<disk>您的主虚拟磁盘的部分。
  11. <address>完全拆除管线。
  12. bus='virtio'从<target>部分更改为bus='ide'
  13. 点击更新

步骤5:启动新的VM并加载VirtIO驱动程序

  1. 在“虚拟机”页面上,单击虚拟机图标,然后单击启动
  2. VM启动后,再次单击该图标,然后单击VNC Remote
  3. VM启动时,它将安装多个驱动程序并提示重新启动,请选择“ 稍后重新启动”
  4. 再次打开Windows设备管理器,您将在其他设备(以太网控制器,PCI设备,SCSI控制器,串行控制器)下注意到3条警告。
  5. 对于每个设备,双击该设备,单击“ 更新驱动程序”,然后选择“ 浏览我的计算机以获取驱动程序软件”
    1. d:\为每个设备的路径指定virtio驱动程序ISO 的路径(例如),然后将自动加载适当的驱动程序。
    2. 如果出现提示,请选择“ 始终信任Red Hat”
  6. 打开Windows File Explorer,浏览至virtio驱动程序磁盘上的guest-agent文件夹,然后双击该qemu-ga-x64.msi文件以安装QEMU guest agent。
  7. 关闭您的VM。

步骤6:删除临时虚拟磁盘并启动VM

  1. 单击以使用基于表单的编辑器(铅笔符号)编辑VM。
  2. 删除辅助虚拟磁盘
  3. 确保主虚拟磁盘指向您的原始虚拟磁盘文件(它可能指向辅助虚拟磁盘,如果是,请对其进行更新以指向您的实际虚拟磁盘)
  4. 完成后,单击更新
  5. 启动您的虚拟机
  6. 确认您的设备管理器未显示任何警告
  7. 完成!


可参考文章:Unraid 6 虚拟机管理 https://www.52help.net/book/unraid/66.html

0
发表评论
评论通过审核后显示。
文章分类
联系我们
联系人: 王先生