This commit is contained in:
Dichgrem
2025-11-23 11:40:35 +00:00
commit ed3fb0e3e1
260 changed files with 34752 additions and 0 deletions

424
about-virtual/index.html Normal file
View File

@@ -0,0 +1,424 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Dich&#x27;s Blog</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="robots" content="noodp"/>
<!-- 字体预加载 - 减少布局偏移 CLS -->
<link rel="preload" href="https://blog.dich.bid/fonts/hack-regular.woff2?sha=3114f1256" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="https://blog.dich.bid/fonts/hack-bold.woff2?sha=3114f1256" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="https://blog.dich.bid/fonts/hack-italic.woff2?sha=3114f1256" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="https://blog.dich.bid/fonts/hack-bolditalic.woff2?sha=3114f1256" as="font" type="font/woff2" crossorigin>
<link rel="stylesheet" href="https://blog.dich.bid/style.css">
<link rel="stylesheet" href="https://blog.dich.bid/color/blue.css">
<link rel="stylesheet" href="https://blog.dich.bid/font-hack-subset.css">
<meta name="description" content="">
<meta property="og:description" content="">
<meta property="og:title" content="Dich's Blog">
<meta property="og:type" content="article">
<meta property="og:url" content="https://blog.dich.bid/about-virtual/">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:description" content="">
<meta name="twitter:title" content="Dich's Blog">
<meta property="twitter:domain" content="blog.dich.bid">
<meta property="twitter:url" content="https://blog.dich.bid/about-virtual/">
<link rel="alternate" type="application/atom+xml" title="Dich&#x27;s Blog Atom Feed" href="https://blog.dich.bid/atom.xml" />
<link rel="shortcut icon" type="image/webp" href="/dich.webp">
<!-- ✅ Added center alignment styles -->
<style>
.footer {
text-align: center;
padding: 1rem 0;
}
.footer__inner {
display: flex;
justify-content: center;
flex-direction: column;
align-items: center;
}
.copyright {
text-align: center;
}
</style>
</head>
<body class="">
<div class="container">
<header class="header">
<div class="header__inner">
<div class="header__logo">
<a href="https://blog.dich.bid" style="text-decoration: none;">
<div class="logo">
Dich&#x27;s Blog
</div>
</a>
</div>
</div>
<nav class="menu">
<ul class="menu__inner">
<li><a href="https://blog.dich.bid">Blog</a></li>
<li><a href="https://blog.dich.bid/archive">Archive</a></li>
<li><a href="https://blog.dich.bid/weekly">Weekly</a></li>
<li><a href="https://blog.dich.bid/tags">Tags</a></li>
<li><a href="https://blog.dich.bid/search">Search</a></li>
<li><a href="https://blog.dich.bid/links">Links</a></li>
<li><a href="https://blog.dich.bid/atom.xml">Rss</a></li>
<li class="active"><a href="https://blog.dich.bid/about">About me</a></li>
<li><a href="https://github.com/Dichgrem" target="_blank" rel="noopener noreferrer">My github</a></li>
<li><a href="https://github.com/getzola/zola" target="_blank" rel="noopener noreferrer">Zola frame</a></li>
</ul>
</nav>
</header>
<div class="content">
<div class="post" data-pagefind-body>
<h1 class="post-title"><a href="https://blog.dich.bid/about-virtual/">乱七八糟:虚拟化常用设置与操作</a></h1>
<div class="post-meta-inline">
<span class="post-date">
2024-08-16
</span>
</div>
<span class="post-tags-inline">
:: tags:&nbsp;
<a class="post-tag" href="https://blog.dich.bid/tags/luan-qi-ba-zao/">#乱七八糟</a></span>
<div class="post-content">
<p>前言 本文记录常用虚拟化平台的使用与操作包括VmwareHypr-vQEMU等等。</p>
<span id="continue-reading"></span><h1 id="yi-vmware">一.Vmware</h1>
<h2 id="xia-zai">下载</h2>
<p>Vmware最新版本对个人已经免费不需要再寻找激活码</p>
<p>由于博通官网下载Vmware需要登录账号这里给出第三方下载站链接<a href="https://www.techspot.com/downloads/189-vmware-workstation-for-windows.html">techspot</a></p>
<h2 id="an-zhuang-ubuntuxu-ni-ji">安装ubuntu虚拟机</h2>
<p><strong>前期准备</strong></p>
<ul>
<li>下载 Ubuntu ISO 镜像</li>
<li>确保你的主机支持虚拟化Intel VT-x / AMD-V并在 BIOS/UEFI 中启用</li>
</ul>
<p><strong>开始安装</strong></p>
<ol>
<li>启动 VMware → 选择 “Create a New Virtual Machine” 或 “新建虚拟机”。</li>
<li>在安装来源 (Installer source) 页选择 “Installer disc image file (ISO)” → 浏览并选中你下载的 Ubuntu ISO 文件。</li>
<li>在“Guest OS Family / 来宾操作系统类型”中选择 <strong>Linux</strong></li>
<li>在 OS 版本中选择 “Ubuntu 64-bit” 或者 “Other Linux 64-bit”如果没有明确 Ubuntu 选项)。</li>
<li>给虚拟机起一个名字,例如 “Ubuntu-VM”。</li>
<li>指定存放虚拟机文件 (.vmx, .vmdk 等) 的文件夹位置。默认位置在<code>C:\Users\&lt;你的用户名&gt;\Documents\Virtual Machines\&lt;虚拟机名称&gt;\</code>下.</li>
<li>在磁盘设置部分设置虚拟磁盘大小,推荐 <strong>25-40 GB</strong>。选择把虚拟磁盘存为一个文件或拆分为多个文件,这两种方式各有优劣(一个文件通常略快些)。</li>
<li>自定义硬件设置</li>
</ol>
<table><thead><tr><th>硬件</th><th>推荐配置 / 注意事项</th></tr></thead><tbody>
<tr><td>CPU 核心数</td><td>2 或更多</td></tr>
<tr><td>内存</td><td>至少 4 GB若要流畅用 GNOME 桌面建议 8 GB</td></tr>
<tr><td>显示适配</td><td>开启 3D 加速(如果 VMware 支持)</td></tr>
<tr><td>硬盘控制器类型</td><td>通常 VMware 默认就行SATA/SCSI一般 Ubuntu 支持都不错</td></tr>
<tr><td>网卡</td><td>使用 NAT 或桥接,根据是否要虚拟机直接在局域网中可访问来定</td></tr>
</tbody></table>
<ol start="9">
<li>启动虚拟机并选择“Install Ubuntu”。</li>
<li>安装 VMware Tools 或 Open-VM-Tools</li>
</ol>
<p>安装这些工具能增强体验,例如鼠标整合、屏幕分辨率自动调整、剪贴板共享等等。</p>
<p>Ubuntu 的方式通常是用 <code>open-vm-tools</code> 包:</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">sudo</span><span> apt update
</span><span style="color:#ffb964;">sudo</span><span> apt install open-vm-tools-desktop
</span><span style="color:#ffb964;">sudo</span><span> reboot
</span></code></pre>
<h3 id="faq">FAQ</h3>
<ul>
<li>屏幕分辨率不能拉大/全屏:安装 open-vm-tools + open-vm-tools-desktop开启 3D 支持;在虚拟机设置里提升视频内存。</li>
<li>虚拟机启动慢:给虚拟机分配更多 RAMCPU关闭不必要的服务确保主机虚拟化支持开启。</li>
<li>无法挂载 ISO 或虚拟光驱:检查虚拟机设置里 CD/DVD 光驱是否连接ISO 文件是否损坏。</li>
<li>时间不对同步差:安装 VMware 工具通常能解决时间同步;也可手动配置 NTP 服务。</li>
<li>网络不通:检查虚拟机网卡类型;如果用 NAT看主机网络如果用桥接看是否有权限或防火墙问题。</li>
</ul>
<h1 id="er-hyper-v">二.Hyper-V</h1>
<p>Hyper-V 是微软内建的虚拟化平台native hypervisor。开启后它会占用硬件虚拟化特性Intel VT-x / AMD-V这可能会和 VMware、VirtualBox 等第三方虚拟化软件冲突。</p>
<h2 id="kai-qi-hyper-v">开启 Hyper-V</h2>
<ul>
<li>PowerShell以管理员权限运行</li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">Enable-WindowsOptionalFeature -Online -FeatureName</span><span> Microsoft-Hyper-V</span><span style="color:#ffb964;"> -All
</span></code></pre>
<ul>
<li>DISM部署映像服务和管理工具</li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">DISM</span><span> /Online /Enable-Feature /All /FeatureName:Microsoft-Hyper-V
</span></code></pre>
<ul>
<li>Windows 功能 GUI 操作:
<code>控制面板 → 程序和功能 → 启用或关闭 Windows 功能</code>中勾选 “Hyper-V”、 “Hyper-V 平台”、 “Hyper-V 管理工具” 等相关项目,然后按提示操作。</li>
</ul>
<h2 id="guan-bi-hyper-v">关闭 Hyper-V</h2>
<ul>
<li>PowerShell管理员权限</li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">Disable-WindowsOptionalFeature -Online -FeatureName</span><span> Microsoft-Hyper-V-All
</span></code></pre>
<ul>
<li>DISM</li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">DISM</span><span> /Online /Disable-Feature:Microsoft-Hyper-V
</span></code></pre>
<ul>
<li>用 bcdedit 修改启动配置,使系统启动时不加载 HypervisorHyper-V 的虚拟化内核)但保留功能安装:</li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">bcdedit</span><span> /set hypervisorlaunchtype off
</span></code></pre>
<p>若要恢复加载,则:</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">bcdedit</span><span> /set hypervisorlaunchtype auto
</span></code></pre>
<ul>
<li>Windows 功能 GUI 中,取消勾选 Hyper-V 相应项。</li>
</ul>
<h2 id="shi-yong-fang-fa">使用方法</h2>
<p>下面是几个典型的场景和命令:</p>
<ol>
<li><strong>给 VMware 或 VirtualBox 使用环境临时关闭 Hyper-V</strong></li>
</ol>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">bcdedit</span><span> /set hypervisorlaunchtype off
</span></code></pre>
<p>然后重启 Windows就能让这些软件正常启动虚拟机。要还原 Hyper-V改为 <code>auto</code><code>on</code>:</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">bcdedit</span><span> /set hypervisorlaunchtype auto
</span></code></pre>
<ol start="2">
<li><strong>从命令行完全关闭 Hyper-V 功能</strong></li>
</ol>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">Disable-WindowsOptionalFeature -Online -FeatureName</span><span> Microsoft-Hyper-V-All
</span></code></pre>
<p>或者用 DISM</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">DISM</span><span> /Online /Disable-Feature:Microsoft-Hyper-V
</span></code></pre>
<ol start="3">
<li><strong>检查当前 Hyper-V 是否正在运行</strong></li>
</ol>
<ul>
<li><code>msinfo32.exe</code>(系统信息)看 “Hyper-V Requirements” 部分或者在命令提示符PowerShell 用 <code>systeminfo</code> 查看是否显示 “Hypervisor has been detected” 之类信息。</li>
</ul>
<ol start="4">
<li><strong>用 GUI 控制 Windows 功能开关</strong></li>
</ol>
<ul>
<li>打开 <code>控制面板 → 程序 → 启用或关闭 Windows 功能</code></li>
<li>勾选 “Hyper-V” 及 Hyper-V 平台 / 虚拟机平台等</li>
<li>点击确定,重启即可。</li>
</ul>
<h2 id="faq-1">FAQ</h2>
<ul>
<li>Windows 家庭版Home通常不提供完整的 Hyper-V 功能 GUI但系统中某些虚拟化基于安全的功能例如 VBS、Core Isolation / Memory Integrity依然可能启用这样也会表现为“Hyper-V 在运行”,建议更换到专业工作站版本。</li>
<li>部分软件(如 Android 模拟器、BlueStacks 等)在检测到 Hyper-V 存在时性能可能受影响关闭后可能解决问题。比如Steam游戏安卓模拟器HCL等等。</li>
</ul>
<h1 id="san-qemu">三.QEMU</h1>
<h2 id="bei-fen">备份</h2>
<p>QEMU安装的系统默认在此位置下可以使用Root用户将其复制到其他位置并备份</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">[root@dos:/var/lib/libvirt/images]ls
</span><span style="color:#ffb964;">ubuntu24.04-2.qcow2
</span></code></pre>
<h2 id="ge-shi-zhuan-huan">格式转换</h2>
<p>QEMU默认使用qcow2格式几乎可以转换为所有其他虚拟机格式我们可以使用<code>qemu-img</code>QEMU 提供的镜像管理工具)来创建、转换、检查、调整虚拟机磁盘镜像。</p>
<p><strong>基本语法</strong></p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">qemu-img </span><span style="color:#8fbfdc;">[</span><span>command</span><span style="color:#8fbfdc;">] [</span><span>options</span><span style="color:#8fbfdc;">]</span><span> filename
</span></code></pre>
<p><strong>镜像格式转换命令大全</strong></p>
<p><code>qemu-img convert -f &lt;源格式&gt; -O &lt;目标格式&gt; &lt;源文件&gt; &lt;目标文件&gt;</code></p>
<p><strong>常见虚拟机平台格式</strong></p>
<table><thead><tr><th>平台/软件</th><th>格式</th><th>示例扩展名</th></tr></thead><tbody>
<tr><td>QEMU/KVM</td><td>qcow2</td><td><code>.qcow2</code></td></tr>
<tr><td>VirtualBox</td><td>vdi</td><td><code>.vdi</code></td></tr>
<tr><td>VMware</td><td>vmdk</td><td><code>.vmdk</code></td></tr>
<tr><td>Microsoft Hyper-V</td><td>vhd/vhdx</td><td><code>.vhd</code> / <code>.vhdx</code></td></tr>
<tr><td>Xen</td><td>raw</td><td><code>.img</code></td></tr>
</tbody></table>
<ul>
<li><code>raw ↔ qcow2</code></li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#888888;"># raw → qcow2
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> raw</span><span style="color:#ffb964;"> -O</span><span> qcow2 disk.img disk.qcow2
</span><span>
</span><span style="color:#888888;"># qcow2 → raw
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> qcow2</span><span style="color:#ffb964;"> -O</span><span> raw disk.qcow2 disk.img
</span></code></pre>
<ul>
<li><code>qcow2 ↔ vdi (VirtualBox)</code></li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#888888;"># qcow2 → vdi
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> qcow2</span><span style="color:#ffb964;"> -O</span><span> vdi disk.qcow2 disk.vdi
</span><span>
</span><span style="color:#888888;"># vdi → qcow2
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> vdi</span><span style="color:#ffb964;"> -O</span><span> qcow2 disk.vdi disk.qcow2
</span></code></pre>
<ul>
<li><code>qcow2 ↔ vmdk (VMware)</code></li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#888888;"># qcow2 → vmdk
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> qcow2</span><span style="color:#ffb964;"> -O</span><span> vmdk disk.qcow2 disk.vmdk
</span><span>
</span><span style="color:#888888;"># vmdk → qcow2
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> vmdk</span><span style="color:#ffb964;"> -O</span><span> qcow2 disk.vmdk disk.qcow2
</span></code></pre>
<ul>
<li><code>qcow2 ↔ vhd/vhdx (Hyper-V)</code></li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#888888;"># qcow2 → vhdx
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> qcow2</span><span style="color:#ffb964;"> -O</span><span> vhdx disk.qcow2 disk.vhdx
</span><span>
</span><span style="color:#888888;"># vhdx → qcow2
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> vhdx</span><span style="color:#ffb964;"> -O</span><span> qcow2 disk.vhdx disk.qcow2
</span></code></pre>
<ul>
<li><code>raw ↔ vdi/vmdk/vhdx</code></li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#888888;"># raw → vdi
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> raw</span><span style="color:#ffb964;"> -O</span><span> vdi disk.img disk.vdi
</span><span>
</span><span style="color:#888888;"># raw → vmdk
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> raw</span><span style="color:#ffb964;"> -O</span><span> vmdk disk.img disk.vmdk
</span><span>
</span><span style="color:#888888;"># raw → vhdx
</span><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -f</span><span> raw</span><span style="color:#ffb964;"> -O</span><span> vhdx disk.img disk.vhdx
</span></code></pre>
<h2 id="kuo-zhan">扩展</h2>
<ol>
<li>扩展大小</li>
</ol>
<pre style="background-color:#151515;color:#e8e8d3;"><code><span>virsh domblklist &lt;虚拟机名字&gt;
</span><span>Target Source
</span><span>vda /var/lib/libvirt/images/ubuntu-24-04.qcow2
</span><span>
</span><span>qemu-img resize /var/lib/libvirt/images/ubuntu-24-04.qcow2 +20G
</span></code></pre>
<ol start="2">
<li>查看磁盘情况:</li>
</ol>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">lsblk
</span></code></pre>
<ol start="3">
<li>如果是单分区系统ext4</li>
</ol>
<ul>
<li>安装工具:</li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">sudo</span><span> nix-env</span><span style="color:#ffb964;"> -iA</span><span> nixos.cloud-utils </span><span style="color:#888888;"># 提供 growpart
</span></code></pre>
<ul>
<li>扩展分区:</li>
</ul>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">sudo</span><span> growpart /dev/vda 1
</span></code></pre>
<ul>
<li>扩展文件系统:</li>
</ul>
<p>ext4</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">sudo</span><span> resize2fs /dev/vda1
</span></code></pre>
<p>xfs</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">sudo</span><span> xfs_growfs /
</span></code></pre>
<h2 id="ya-suo">压缩</h2>
<p>有时候我们需要备份QEMU的镜像但是镜像大小非常庞大可以对其进行压缩。</p>
<p>首先在虚拟机里以Ubuntu为例执行</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">sudo</span><span> apt clean
</span><span style="color:#ffb964;">sudo</span><span> rm</span><span style="color:#ffb964;"> -rf</span><span> /var/log/*log /var/log/journal/* </span><span style="color:#888888;"># 清理日志
</span></code></pre>
<p>然后填充空闲空间:</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">sudo</span><span> dd if=/dev/zero of=/zero.fill bs=1M || </span><span style="color:#ffb964;">true
</span><span style="color:#ffb964;">sudo</span><span> sync
</span><span style="color:#ffb964;">sudo</span><span> rm</span><span style="color:#ffb964;"> -f</span><span> /zero.fill
</span></code></pre>
<p>随后关闭虚拟机,在宿主机上使用 <code>qemu-img</code> 压缩:</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -O</span><span> qcow2 ubuntu24.04-2.qcow2 ubuntu24.04-2-compressed.qcow2
</span></code></pre>
<p>可选:加上 <code>-c</code> 开启压缩:</p>
<pre data-lang="bash" style="background-color:#151515;color:#e8e8d3;" class="language-bash "><code class="language-bash" data-lang="bash"><span style="color:#ffb964;">qemu-img</span><span> convert</span><span style="color:#ffb964;"> -O</span><span> qcow2</span><span style="color:#ffb964;"> -c</span><span> ubuntu24.04-2.qcow2 ubuntu24.04-2-compressed.qcow2
</span></code></pre>
<blockquote>
<p><strong>不要直接删除原始文件</strong>,先确认新文件能正常启动。如果你的 qcow2 镜像是直接被写满了(比如里面确实存了很多真实数据),那即使压缩也不会小太多。如果镜像内部用了 LVM还可以在 LVM 里使用sudo fstrim -av进行fstrim.</p>
</blockquote>
<hr />
<p><strong>Done.</strong></p>
</div>
<div class="pagination">
<div class="pagination__title">
<span class="pagination__title-h">Thanks for reading! Read other posts?</span>
<hr />
</div>
<div class="pagination__buttons">
<span class="button previous">
<a href="https://blog.dich.bid/network-docker/">
<span class="button__icon"></span>&nbsp;
<span class="button__text">网络艺术:Docker建站与反向代理</span>
</a>
</span>
<span class="button next">
<a href="https://blog.dich.bid/about-2024/">
<span class="button__text">乱七八糟:2024年度总结</span>&nbsp;
<span class="button__icon"></span>
</a>
</span>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="footer__inner">
<div class="copyright">
<span>©
2025
Dichgrem</span>
<span class="copyright-theme">
<span class="copyright-theme-sep"> :: CC BY-SA 4.0 :: A friend comes from distant lands</span>
</a>
</span>
</div>
</div>
</footer>
</div>
</body>
</html>