-fw_cfg [name=],file= add named fw_cfg entry with contents from file -fw_cfg [name=],string= add named fw_cfg entry with contents from string
在 QEMU 中,-fw_cfg
选项用于配置虚拟机的固件配置(firmware configuration),这通常用于向虚拟机的 BIOS 或 UEFI 固件传递特定的配置数据。以下是 -fw_cfg
选项的两种使用方式的详细解释:
-fw_cfg [name=],file=
[name=]
是一个可选的参数,用于指定固件配置项的名称。如果不提供,则 QEMU 会自动生成一个名称。file=
指定包含配置数据的文件的路径。/path/to/config.data
加载配置数据,并将其作为一个名为 config
的固件配置项传递给虚拟机:qemu-system-x86_64 ... -fw_cfg name=config,file=/path/to/config.data ...
-fw_cfg [name=],string=
[name=]
同样是用于指定固件配置项名称的可选参数。string=
是要传递给固件的字符串值。example
作为名为 example_str
的固件配置项传递给虚拟机:qemu-system-x86_64 ... -fw_cfg name=example_str,string="example" ...
这些固件配置项可以被虚拟机内的操作系统或固件在启动时读取,以执行特定的配置任务,例如网络配置、启动参数传递等。在某些情况下,这对于自定义虚拟机的启动行为非常有用。
-serial dev redirect the serial port to char device 'dev'
在 QEMU 中,-serial
选项用于配置虚拟机的串行端口。串行端口可以用于虚拟机和宿主机之间的通信,也可以用于重定向虚拟机的控制台输出。-serial dev
中的 dev
可以是以下几种不同的值或设备:
null
:禁用串行端口。stdio
:将虚拟机的串行端口输出重定向到 QEMU 的标准输入输出,通常用于在控制台窗口中查看虚拟机的输出。file:
:将虚拟机的串行端口输出重定向到一个文件。pipe:
:将虚拟机的串行端口输出重定向到一个命名管道。socket
:将虚拟机的串行端口输出重定向到一个套接字。chardev:id
:将虚拟机的串行端口连接到一个字符设备,其中 id
是使用 -chardev
选项创建的字符设备的标识符。-serial
选项的例子:# 将虚拟机的串行端口输出重定向到标准输入输出 qemu-system-x86_64 -serial stdio ... # 将虚拟机的串行端口输出重定向到一个文件 qemu-system-x86_64 -serial file:/path/to/serial.log ... # 将虚拟机的串行端口输出重定向到一个命名管道 qemu-system-x86_64 -serial pipe:myserialpipe ... # 将虚拟机的串行端口连接到一个套接字 qemu-system-x86_64 -serial socket ... # 将虚拟机的串行端口连接到一个字符设备 qemu-system-x86_64 -chardev pipe,id=charpipe -serial chardev:charpipe ...
-parallel dev redirect the parallel port to char device 'dev'
在 QEMU 中,-parallel
选项用于配置虚拟机的并行端口。并行端口通常用于打印机和其他并行设备,但在虚拟化环境中,它也可以用于重定向输出,类似于串行端口。
与 -serial
选项类似,-parallel
选项的 dev
参数可以是以下几种不同的值或设备:
null
:禁用并行端口。file:
:将虚拟机的并行端口输出重定向到一个文件。pipe:
:将虚拟机的并行端口输出重定向到一个命名管道。socket
:将虚拟机的并行端口输出重定向到一个套接字。chardev:id
:将虚拟机的并行端口连接到一个字符设备,其中 id
是使用 -chardev
选项创建的字符设备的标识符。-parallel
选项的例子:# 将虚拟机的并行端口输出重定向到标准输入输出 qemu-system-x86_64 -parallel stdio ... # 将虚拟机的并行端口输出重定向到一个文件 qemu-system-x86_64 -parallel file:/path/to/parallel.log ... # 将虚拟机的并行端口输出重定向到一个命名管道 qemu-system-x86_64 -parallel pipe:myparallelpipe ... # 将虚拟机的并行端口连接到一个套接字 qemu-system-x86_64 -parallel socket ... # 将虚拟机的并行端口连接到一个字符设备 qemu-system-x86_64 -chardev pipe,id=charpipe -parallel chardev:charpipe ...
请注意,虽然 -parallel
选项在技术上仍然可用,但在现代虚拟化环境中,并行端口的使用已经不如串行端口那么普遍。因此,在某些情况下,你可能不会经常看到这个选项的使用。
-monitor dev redirect the monitor to char device 'dev'
在 QEMU 中,-monitor
选项用于指定监视器(monitor)的设备