在 Debian 上安装 Windows 10 虚拟机:一份够用的办公实践记录
最近我在 Debian 13 上搭了一台 Windows 10 虚拟机,目标很简单:在不离开 Linux 主系统的前提下,保留一个稳定的 Windows 办公环境。
这篇文章不讲太多原理,只记录实际可复现的过程,重点包括:
- Debian 上安装和运行 Windows 10 虚拟机
- 首次启动时 UEFI 菜单该怎么选
- 常用的启动、关机和重启方式
- 最关键的双向复制粘贴怎么打通
如果以后我自己再装一次,照着这篇做就够了。
一、我的环境
宿主机:
- 系统:
Debian 13 (trixie) - 虚拟化方案:
KVM/QEMU + libvirt + virt-manager - CPU:
Intel i5-12600KF - 内存:
31 GiB - 显卡:
NVIDIA RTX 4070 SUPER
虚拟机配置:
- 虚拟机名:
win10-office - vCPU:
8 - 内存:
12 GiB - 磁盘:
120 GiB - 固件:
UEFI - TPM:
2.0 - 图形协议:
SPICE
这套配置用于 Office、浏览器、常规办公软件,体验是足够的。
二、为什么选 KVM/QEMU
在 Debian 上跑 Windows,常见方案有 VirtualBox、VMware、KVM/QEMU。
我最后选的是:
KVM/QEMU + libvirt + virt-manager
原因很实际:
- 它是 Linux 下的主流方案
- 性能和稳定性都更合适长期使用
- 跟系统集成更自然
- 后续网络、磁盘、显示、TPM 这些能力更完整
如果只是为了在 Debian 里稳定办公,这套方案基本是首选。
三、先安装宿主机依赖
我把安装脚本留在了桌面:
执行命令:
sudo bash /home/xu/Desktop/install_kvm_windows_host.sh
它会安装这些核心组件:
qemu-system-x86libvirt-daemon-systemvirt-managerovmfswtpmvirt-viewer
装完以后,最好重新登录一下桌面会话,让用户组权限生效。
四、准备 Windows 10 安装镜像
我使用的镜像路径是:
/home/xu/Desktop/Win10_22H2_Chinese_Simplified_x64v1.iso
这里要顺便记一件事:
Windows 10 已经在 2025-10-14 结束官方支持。
这不代表它立刻不能用,但如果是长期办公环境,从安全维护角度看,它已经不是最佳选择。这里只是因为我当前确实需要 Windows 10。
五、创建虚拟机时的关键参数
这次最终跑通的配置如下:
8 vCPU12288 MiB内存120 GiB磁盘UEFI启动TPM 2.0- 默认 NAT 网络
SPICE显示
虚拟磁盘保存在:
/var/lib/libvirt/images/win10-office.qcow2
这里有一个容易忽略的点:
虚拟机关机后,CPU 和 内存 会释放回 Debian;但虚拟磁盘文件会一直占用磁盘空间。
六、首次启动时不要慌:先过 UEFI 菜单
第一次启动虚拟机时,不一定会直接进入 Windows 安装界面,可能先看到一个 UEFI Boot Manager。
这时正确操作是:
- 进入
Boot Manager - 选择
UEFI QEMU DVD-ROM - 从安装光盘启动
不要选:
UEFI QEMU HARDDISK
因为这时虚拟硬盘里还没有系统。
七、安装 Windows 10 时怎么选
进入 Windows 安装程序后,有两个地方容易犹豫。
1. 安装类型
这里选:
自定义:仅安装 Windows(高级)
不要选“升级”。
原因很简单:这是全新虚拟机,不是给已有系统升级用的。
2. 安装位置
到了磁盘界面后,直接选:
驱动器 0 未分配的空间 120.0 GB
然后点 下一步。
不用手动分区,Windows 会自动创建 EFI 分区、恢复分区和系统分区。
八、启动和进入虚拟机
我把控制台打开脚本也放在了桌面:
平时直接执行:
bash /home/xu/Desktop/open_win10_office_console.sh
这个脚本会自动做两件事:
- 如果虚拟机没开,就先启动
- 然后打开
virt-viewer
如果只想手动控制虚拟机,也可以用这些命令。
启动:
virsh -c qemu:///system start win10-office
关机:
virsh -c qemu:///system shutdown win10-office
重启:
virsh -c qemu:///system reboot win10-office
查看状态:
virsh -c qemu:///system domstate win10-office
九、最容易忘的一步:打通双向复制粘贴
这部分是我这次折腾里最值得单独记下来的内容。
一开始我以为只要装好 Windows,再用 virt-viewer 打开,就能直接把 Debian 里的内容复制到虚拟机里,结果并不行。
后来实际验证下来,双向复制粘贴要同时满足下面几个条件:
- 虚拟机显示协议使用
SPICE - Windows 里安装
SPICE Guest Tools - Windows 里再安装
virtio-win-guest-tools SPICE Agent和SPICE VDAgent服务正常运行- 安装完成后,重启 Windows,并重新打开
virt-viewer
1. 为什么只装一个工具不够
这次实际踩坑的点就在这里。
我最开始装了 SPICE VDAgent,服务也能启动,但复制粘贴依然不工作。后来补装了 virtio-win-guest-tools,问题才真正解决。
简单理解就是:
SPICE Agent负责剪贴板能力- 但它依赖的
VirtIO Serial驱动链也必须是正常的
所以最稳的做法不是只装一个,而是两个都装。
2. 在 Windows 里安装这两个工具
我当时直接通过宿主机提供了本地下载地址,在虚拟机里访问:
http://192.168.122.1:18080/spice-guest-tools-latest.exe
先安装 SPICE Guest Tools。
然后再访问:
http://192.168.122.1:18080/virtio-win-guest-tools.exe
安装 virtio-win-guest-tools。
这两个都装完以后:
- 重启 Windows
- 关闭当前
virt-viewer窗口 - 在 Debian 重新执行:
bash /home/xu/Desktop/open_win10_office_console.sh
3. 怎么检查有没有装对
在 Windows 里按:
Win + R
输入:
services.msc
打开服务列表后,重点看这两个:
SPICE AgentSPICE VDAgent
建议状态是:
- 启动类型:
自动 - 当前状态:
正在运行
4. 怎么测试复制粘贴
不要一上来就在浏览器或者 Word 里试,先用最简单的文本场景。
推荐测试顺序:
- 在 Debian 里复制一行纯文本
- 粘贴到 Windows 里的
记事本 - 再从 Windows 记事本复制一行文本回 Debian
如果这一步通了,说明双向剪贴板已经正常。
十、分辨率太小怎么办
Windows 装完以后,默认分辨率不一定适合办公,尤其是窗口看起来会偏小。
我自己的处理方式很简单:
- 先把
virt-viewer窗口放大、最大化,或者全屏 - 再到 Windows 里打开:
设置 -> 系统 -> 显示
重点调两个参数:
显示分辨率缩放
比较适合办公的组合有两个:
1920x1080 + 125%1920x1080 + 150%
前者显示内容更多,后者字体更舒服一点。
十一、几个最终结论
这次实践里,最值得以后直接记住的点有这些:
第一,Debian 上跑 Windows 办公,KVM/QEMU + libvirt + virt-manager 是很稳的方案。
第二,首次启动如果进了 UEFI 菜单,不是出错,直接去 Boot Manager 里选 UEFI QEMU DVD-ROM 就行。
第三,安装 Windows 时,磁盘直接选整块未分配空间,不用自己手工分区。
第四,8 vCPU + 12 GiB 对日常办公是够用的,关机后 CPU 和内存会释放给 Debian。
第五,双向复制粘贴这件事,真正稳妥的做法是:
SPICE Guest Tools + virtio-win-guest-tools 一起装。
如果只装前者,未必一定能通。
十二、附:我保留在桌面的文件
为了下次重装方便,我把相关文件都留在了桌面:
- install_kvm_windows_host.sh
- open_win10_office_console.sh
- debian_windows10_vm_guide.md
- debian_windows10_vm_blog.md
下次如果再搭,基本只需要先看这篇,再按这里的命令和步骤走一遍即可。