我有一个虚拟设备(qcow2图像),它需要 VM 上的串行控制台。换句话说,我不需要安装任何东西。我只需要从这个qcow2磁盘启动虚拟机并通过串行接口访问虚拟设备。有可能做到这一点virt-install吗?当我添加--extra-args="console=ttyS0,115200"tovirt-install时,它需要我指定一个--location. 是否有解决方法可以使用 启动启用串行的虚拟机virt-install,但不指定分发树安装源?
--console
Connect a text console between the guest and host. Certain guest and
hypervisor combinations can automatically set up a getty in the guest, so an
out of the box text login can be provided (target_type=xen for xen paravirt
guests, and possibly target_type=virtio in the future).
如果这不起作用,您还可以通过使用( link ) 之类的工具编辑设备内的引导选项或通过指定内核的位置 initrd 并手动提供选项来实现此目的。在 guestfish 的情况下,甚至有一个方法可以实现您正在寻找的东西:guestfish-recipies:在 VM 中编辑 grub 配置。guestfish--boot
开机:
--boot
Optionally specify the post-install VM boot configuration. This option
allows specifying a boot device order, permanently booting off
kernel/initrd with option kernel arguments, and enabling a BIOS boot menu
(requires libvirt 0.8.3 or later)
--boot kernel=KERNEL,initrd=INITRD,kernel_args="console=/dev/ttyS0"
Have guest permanently boot off a local kernel/initrd pair, with the
specified kernel options.
是的,这是可能的,尽管添加串行控制台有多个步骤。
--extra-args
只能与 结合使用--location
。当您从本地qcow2
磁盘映像工作时,--location
实际上并不是您正在寻找的机制。相反,您正在寻找
--console
:安慰:
在实践中,添加如下(在现代 Linux 系统上):
注意:您可以在此处获得有关可用配置的更多选项:https ://libvirt.org/formatdomain.html#elementsConsole
由于我已经准备好了基于 QCOW2 的设备,因此我可以进行如下测试:
在幕后,这是对“域”(存储主机配置的 XML 文件)执行许多添加操作。例如:
如果这不起作用,您还可以通过使用( link ) 之类的工具编辑设备内的引导选项或通过指定内核的位置 initrd 并手动提供选项来实现此目的。在 guestfish 的情况下,甚至有一个方法可以实现您正在寻找的东西:guestfish-recipies:在 VM 中编辑 grub 配置。
guestfish
--boot
开机: