QEMU镜像文件简介

news2025/1/4 16:50:45

本文对qemu支持的镜像文件进行简单的介绍。

qemu-img支持非常多种的文件格式,可以通过“qemu-img -h”查看其命令帮助得到,它支持20多种格式:file,quorum,blkverify,luks,dmg,sheepdog,parallels,nbd,vpc,bochs,blkdebug,qcow2,vvfat,qed,host_cdrom,cloop,vmdk,host_device,qcow,vdi,null-aio,blkreplay,null-co,raw等。

下面对其中的几种文件格式做简单的介绍。

  1. raw
    原始的磁盘镜像格式,也是qemu-img命令默认的文件格式。这种格式的文件的优势在于它非常简单,且非常容易移植到其他模拟器(emulator,QEMU也是一个emulator)上去使用。如果客户机文件系统(如Linux的ext2/ext3/ext4、Windows的NTFS)支持“空洞”(hole),那么镜像文件只有在被写有数据的扇区才会真正占用磁盘空间,从而节省磁盘空间,就如前面用“qemu-img info”命令查看镜像文件信息中看到的那样。qemu-img默认的raw格式的文件其实是稀疏文件(sparse file),可以用preallocation参数=full来禁用稀疏文件方式而完全预分配空间。尽管一开始就实际占用磁盘空间的方式没有节省磁盘的效果,不过这种方式在写入新的数据时不需要宿主机从现有磁盘中分配空间,因此在第一次写入数据时,这种方式的性能会比稀疏文件的方式更好一点。
    raw格式只有一个参数选项:preallocation。它有3个值:off,falloc,full。off就是禁止预分配空间,即采用稀疏文件方式,这是默认值。falloc是qemu-img创建镜像时候调用posix_fallocate()函数来预分配磁盘空间给镜像文件(但不往其中写入数据,所以也能瞬时完成)。full是除了实实在在地预分配空间以外,还逐字节地写0,所以很慢。

  2. qcow2
    qcow2是QEMU目前推荐的镜像格式,它是使用最广、功能最多的格式。它支持稀疏文件(即支持空洞)以节省存储空间,它支持可选的AES加密以提高镜像文件安全性,支持基于zlib的压缩,支持在一个镜像文件中有多个虚拟机快照。
    在qemu-img命令中,qcow2支持如下几个选项:

  • size,指定镜像文件的大小。等同于qemu-img create-f fmt<文件名>size。
  • compat(兼容性水平,compatibility level),可以等于0.10或者1.1,表示适用于0.10版本以后的QEMU,或者是1.1版本以后的QEMU。
  • backing_file,用于指定后端镜像文件。
  • backing_fmt,设置后端镜像的镜像格式。
  • cluster_size,设置镜像中簇的大小,取值为512B~2MB,默认值为64kB。较小的簇可以节省镜像文件的空间,而较大的簇可以带来更好的性能,需要根据实际情况来平衡。一般采用默认值即可。
  • preallocation,设置镜像文件空间的预分配模式,其值可为off、falloc、full、metadata。前3种与raw格式的类似,metadata模式用于设置为镜像文件预分配metadata的磁盘空间,所以这种方式生成的镜像文件稍大一点,不过在其真正分配空间写入数据时效率更高。生成镜像文件的大小依次是off<metadata<falloc=full,性能上full最好,其他3种依次递减。
  • encryption,用于设置加密,该选项将来会被废弃,不推荐使用。对于需要加密镜像的需求,推荐使用Linux本身的Linux dm-crypt/LUKS系统。
  • lazy_refcounts,用于延迟引用计数(refcount)的更新,可以减少metadata的I/O操作,以达到提高performance的效果。适用于cache=writethrough这类不会自己组合metadata操作的情况。它的缺点是一旦客户机意外崩溃,下次启动时会隐含一次qemu-img check-rall的操作,需要额外花费点时间。它是当compact=1.1时才有的选项。
  • refcount_bits,一个引用计数的比特宽度,默认为16。
  1. qcow
    这是较旧的QEMU镜像格式,现在已经很少使用了,一般用于兼容比较老版本的
    QEMU。它支持size、backing_file(后端镜像)和encryption(加密)3个选项。
  2. vdi
    兼容Oracle(Sun)VirtualBox1.1的镜像文件格式(Virtual Disk Image)。
  3. vmdk
    兼容VMware 4版本以上的镜像文件格式(Virtual Machine Disk Format)。
  4. vpc
    兼容Microsoft的Virtual PC的镜像文件格式(Virtual Hard Disk format)。
  5. vhdx
    兼容Microsoft Hyper-V的镜像文件格式。

参考

KVM实战:原理、进阶与性能调优

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2269773.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CA系统的设计(CA证书生成,吊销,数字签名生成)

CA系统概述 CA认证系统是一种基于公钥密码基础设施&#xff08;PKI&#xff09;的信息安全技术&#xff0c;它可以为网络通信双方提供身份认证、数据加密、数字签名等功能。CA认证系统的核心是证书授权机构&#xff08;CA&#xff09;&#xff0c;它负责为用户&#xff08;节点…

phpstudy2018问题(技巧)总结

目录 安装介绍注意操作 问题phpstudy待续、更新中...... 安装 软件下载&#xff08;新人推荐2018 版本phpstudy &#xff09; 官网下载 https://www.xp.cn/download.html 介绍 系统服务------开机自启 非服务模式------开机不自启 搭建好环境, 此时服务器与客户端同时存在 …

USB2.0之描述符(Descriptors)

文章目录 描述符(Descriptors)设备描述符(Device Descriptors)配置描述符(Configuration Descriptors)接口描述符(Interface Descriptors)端点描述符(Endpoint Descriptors)字符串描述符(String Descriptors) 参考资料 描述符(Descriptors) 描述符是设备本身各项信息的集合&…

从授权校验看SpringBoot自动装配

背景 最近需要实现一个对于系统的授权检测功能&#xff0c;即当SpringBoot应用被启动时&#xff0c;需要当前设备是否具有有效的的授权许可信息&#xff0c;若无则直接退出应用。具体的实现方案请继续看下文。 环境 Ruoyi-Vue SpringBoot3 RuoYi-Vue: &#x1f389; 基于Spr…

jmeter分布式启动

https://www.cnblogs.com/qtclm/p/11082081.html 1、代理机&#xff1a;输入“ipconfig”&#xff0c;找到IP地址&#xff0c;在Jmeter/bin/jmeter.properties设置remote host 启动jmeter server 1、控制机&#xff1a;输入“ipconfig”&#xff0c;找到IP地址&#xff0c;在J…

SpringCloud源码-Ribbon

一、Spring定制化RestTemplate&#xff0c;预留出RestTemplate定制化扩展点 org.springframework.cloud.client.loadbalancer.LoadBalancerAutoConfiguration 二、Ribbon定义RestTemplate Ribbon扩展点功能 org.springframework.cloud.netflix.ribbon.RibbonAutoConfiguratio…

目标检测,语义分割标注工具--labelimg labelme

1 labelimg labelimg可以用来标注目标检测的数据集&#xff0c; 提供多种格式的输出&#xff0c; 如Pascal Voc, YOLO等。 1.1 安装 pip install labelimg1.2 使用 命令行直接输入labelimg即可打开软件主界面进行操作。 使用非常简单&#xff0c; 不做过细的介绍&#xff0…

pd虚拟机 [po] Parallels Desktop 20 激活 for Mac [jie] 安装教程【支持M芯片】

文章目录 效果图一、下载软件二、安装运行⚠️注意事项&#xff1a;1、前往 系统设置–> 隐私与安全性 –> 完整磁盘访问权限&#xff0c;中允许终端&#xff1a;2、安装运行【ParallelsDesktop-20.1.2-55742.dmg】&#xff0c;运行【安装.app】3、将【Patch】文件夹拖到…

windows11安装软件时选择文件路径只有桌面及子文件夹怎么解决方法

现象&#xff1a;当桌面文件夹、文件总数超过一定数量时(具体个数不详&#xff0c;个人猜测可能跟系统架构或内存有关)点击应用程序中“浏览”按钮时&#xff0c;只能看到桌面文件夹&#xff0c;其他盘符看不到。一个巨硬愚蠢的bug。定期清理下桌面吧&#xff0c;习惯下载到桌面…

SpringCloud源码-openFeign

LoadBalancer默认只有nacos服务发现器 openFeign与springcloud loadbalancer的结合点 openFeign通过spring cloud loadbalancer进行负载均衡&#xff0c;spring cloud loadbalancer通过discovery client获取nacos的机器列表&#xff0c;然后底层进行负载均衡。

开源架构中的数据库选择优化版

上一篇文章推荐&#xff1a; 开源架构学习指南&#xff1a;文档与资源的智慧锦囊&#xff08;New&#xff09; 我管理的社区推荐&#xff1a;【青云交社区】和【架构师社区】 推荐技术圈福利社群&#xff1a;点击快速加入 开源架构中的数据库选择优化版 一、引言二、关系型开源…

Listwise 排序之 LambdaRank:最大化 NDCG 的秘诀

Listwise系列相关文章&#xff08;置顶&#xff09; 1.Listwise 模型时间线梳理 2.Listwise 排序之 LambdaRank&#xff1a;最大化 NDCG 的秘诀 引言 LambdaRank 是一种用于排序学习&#xff08;Learning to Rank, LTR&#xff09;的模型&#xff0c;特别适用于推荐系统和信息…

汉化SecureCRT9.1

我个人觉得&#xff0c;SecureCRT是最好用的ssh远程工具软件&#xff0c;但是这个软件没有中文版本&#xff0c;我这种英文水平糟糕的人用起来&#xff0c;略有不便&#xff0c;因为一直没有在网上找到合适的汉化版本&#xff0c;于是有自己做一个汉化版本的计划。 前几日&…

我在广州学 Mysql 系列——插入、更新与删除数据详解以及实例

ℹ️大家好&#xff0c;我是练小杰&#xff0c;今天是2024年12月30号&#xff0c;明天就是2024最后一天了&#xff01;&#xff01; 本文将讲述MYSQL数据库的插入&#xff0c;更新以及删除数据~~ 复习&#xff1a;&#x1f449;【有关Mysql数据库的单表&#xff0c;多表查询的练…

HarmonyOS Next ArkUI ListListItem笔记

学习目标&#xff1a; List和ListItem的使用 学习内容&#xff1a; import { NewsInfo, newsInfoList } from ../viewmodel/NewsInfoclass DividerTmp {strokeWidth: Length 1startMargin: Length 60endMargin: Length 10color: ResourceColor #ffe9f0f0constructor(str…

机器人C++开源库The Robotics Library (RL)使用手册(四)

建立自己的机器人3D模型和运动学模型 这里以国产机器人天机TR8为例,使用最普遍的DH运动学模型,结合RL所需的描述文件,进行生成。 最终,需要的有两个文件,一个是.wrl三维模型描述文件;一个是.xml运动学模型描述文件。 1、通过STEP/STP三维文件生成wrl三维文件 机器人的…

游戏引擎学习第70天

这一节没讲什么主要是关于接下来要干的任务 开发过程概览 我们正在进行最后的总结&#xff0c;并计划接下来的步骤。目前的目标是创建一个包含所有必要组件的游戏引擎原型版本&#xff0c;目的是让这些部分能够协同工作并展现预期效果。通过这一过程&#xff0c;可以实验和探…

Android笔试面试题AI答之Android基础(8)

Android入门请看《Android应用开发项目式教程》&#xff0c;视频、源码、答疑&#xff0c;手把手教 文章目录 1.Android新建工程需要注意的地方有哪些&#xff1f;**1. 选择合适的项目模板****2. 配置项目基本信息****3. 选择最低 SDK 版本****4. 配置构建工具****5. 选择编程…

传统听写与大模型听写比对

在快节奏的现代生活中&#xff0c;听写技能仍然是学习语言和提升认知能力的重要环节。然而&#xff0c;传统的听写练习往往枯燥乏味&#xff0c;且效率不高。现在&#xff0c;随着人工智能技术的发展&#xff0c;大模型听写工具的问世&#xff0c;为传统听写带来了革命性的变革…

赛博周刊·2024年度工具精选(画板二维码类)

一、画板类 1、Excalidraw 一款好用的手绘工具&#xff0c;无需注册&#xff0c;支持多人协作。GitHub项目地址&#xff1a;https://github.com/excalidraw/excalidraw。 2、 Floating Whiteboard 一个在线的网页白板工具。 3、BoardOS&#xff1a;在线实时白板协作系统 一…