【Qemu】编译安装

编译版本 下载链接
开发文档以 官方文档 为主

1、安装步骤

tar xf qemu-<版本号>.tar.xz
mkdir -p build
cd build
../configure
make && make install

2、所需依赖

Ninja
》》》所需依赖较多,按需安装

3、configure常用相关参数

--enable-debug:编译调试版本,调试版本的运行速度非常慢
--disable-werror:忽略警告,否则任何编译警告都被视为编译错误
--enable-plugins:开启TCG Plugin支持
--disable-stack-protector:关闭QEMU自身的栈保护
--extra-cflags="-O3":能让你的QEMU提速5~10%,如果编译时报错,请加上`--disable-werror`
--prefix=<路径>:指定安装目录的路径
--target-list=<架构>:指定要编译的目标架构列表,例如 `x86_64-softmmu,arm-softmmu`。
--enable-<功能>:启用指定的功能。例如,`--enable-kvm` 启用 KVM 支持,`--enable-gtk` 启用 GTK 图形界面等。
--disable-<功能>:禁用指定的功能。
--enable-debug:启用调试模式,包括调试符号和调试输出。
--enable-virtfs:启用 virtio 文件系统支持。
--enable-modules:启用模块支持。
--disable-guest-agent:禁用客户机代理支持。
--enable-trace-backend=<后端>:指定跟踪后端,例如 `simple`、`log` 或 `dtrace`。
--disable-vhost-net:禁用 vhost-net 支持。

可以在配置文件路径直接使用 configure --help 查看所有可选参数。部分需要在build目录下。
在选择编译目标架构时,windows下使用 --enable-user开启用户模式,linux上使用后面带-user的架构。

4、qemu-system-xxx常用相关参数

-M:指定machine,-help可以列出所有所支持的machine
-cpu:指定模拟的 CPU 型号,例如 `cortex-a57`、`cortex-a53` 等。
-smp:CPU核数
-m:RAM容量
-kernel:Linux kernel文件
-append:Linux Kernel的bootargs。这个命令的参数很复杂,具体可以参考kernel文档。
-console:设备名必须和machine的串口一致,否则会看不到kernel log。而不同的平台console名称都是不一样的,这是Kernel很不友好的一点。
-ignore_loglevel:可以让你看到尽可能多的kernel log,当然也会减慢kernel的启动速度
-init:必须保证initrd里有/linuxrc这个文件,否则会无法启动shell
-initrd:指定initrd文件

5、qemu-edid常用相关参数

-device edid=<edid_file>:指定EDID文件的路径。可以通过指定一个包含EDID数据的文件来模拟显示器的能力和特性。文件可以是二进制格式或文本格式。
-vga std:使用标准VGA显示适配器。当使用`-vga std`参数时,QEMU会自动生成一个默认的EDID文件,并将其提供给虚拟机。
-vga qxl:使用QXL显示适配器。QXL是一种高性能的虚拟显示适配器,支持SPICE协议,用于提供更好的图形性能和体验。QEMU会自动生成一个默认的EDID文件,并将其提供给虚拟机。
-vga none:禁用显示适配器。在某些场景下,可能不需要显示器或图形输出,可以使用`-vga none`参数禁用显示适配器。

6、qemu-img常用相关参数

-create:创建一个新的磁盘镜像文件。- f <format>`:指定要创建的磁盘镜像的格式,例如qcow2、raw、vmdk等。 - <image>:指定要创建的磁盘镜像文件的路径。
-convert:转换磁盘镜像文件的格式。-f <src_format>:指定源磁盘镜像文件的格式。 -O <dest_format>:指定目标磁盘镜像文件的格式。 - src_image:指定要转换的源磁盘镜像文件的路径。 - <dest_image>:指定转换后的目标磁盘镜像文件的路径。
-info:显示磁盘镜像文件的详细信息。-f <format>:指定要查看信息的磁盘镜像文件的格式。 -<image>:指定要查看信息的磁盘镜像文件的路径。
-resize:调整磁盘镜像文件的大小。 -f <format>:指定要调整大小的磁盘镜像文件的格式。  - <image>:指定要调整大小的磁盘镜像文件的路径。 - <size>:指定调整后的大小,可以使用带有单位的数值,如10G、1T。
-check:检查磁盘镜像文件的完整性和一致性。  -f <format>:指定要检查的磁盘镜像文件的格式。 - <image>:指定要检查的磁盘镜像文件的路径。
-snapshot:创建和管理磁盘镜像的快照。 -l:列出指定磁盘镜像文件中的所有快照。  -c <snapshot>:创建一个名为<snapshot>的快照。  -a <snapshot>:应用名为<snapshot>的快照,恢复磁盘镜像到快照创建时的状态。

7、qemu-io常用相关参数

-qemu-io <image>:启动qemu-io并打开指定的磁盘镜像文件。
-info:显示磁盘镜像文件的基本信息,如大小、块大小等。
-read <offset> <length>:从指定偏移量读取指定长度的数据。<offset>:读取数据的起始偏移量。<length>:要读取的数据长度。
-write <offset> <length>:向指定偏移量写入指定长度的数据。<offset>:写入数据的起始偏移量。<length>:要写入的数据长度。
-flush:将所有挂起的写入操作刷新到磁盘。
-quit:退出qemu-io。

8、qemu-hbd常用相关参数

-c <device> 或 --connect <device>:指定要连接的NBD设备的名称或路径。
-f <format> 或 --format <format>:指定磁盘镜像文件的格式。可以是raw、qcow2、vmdk等常见的格式。
-r 或 --read-only:以只读模式挂载磁盘镜像,禁止对其进行写入操作。
-B 或 --socket:指定NBD连接的套接字文件路径。
-d 或 --disconnect:断开与NBD设备的连接。
-l 或 --list:列出当前已连接的NBD设备。
-h 或 --help:显示帮助信息。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值