Linux 安装 Windows 虚拟机并远程连接
Linux 安装 Windows 虚拟机并远程连接
本文是实际操作后的梳理,可能会存在一些问题…仅供参考大致流程
发行版:Debian 12,无图形化界面
安装相关软件
sudo apt update
sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-install
安装Windows系统
准备 Windows 镜像
前往 https://www.microsoft.com/zh-cn/software-download/windows10,下载安装媒体,创建 ISO 文件,把 ISO 文件拷贝到 Linux 服务器中(推荐路径:/var/lib/libvirt/images/windows10.iso)
也可以直接在这个网站复制下载链接,在服务器上使用 wget/curl 下载,避免拷贝:https://massgrave.dev/windows_10_links
创建磁盘镜像
qemu-img create -f qcow2 /var/lib/libvirt/images/win10.qcow2 60G
60G 可以自由调整,后期容量不足也可以进行扩容。
启用默认网络
sudo virsh net-start default
sudo virsh net-autostart default
安装虚拟机
sudo virt-install \
--name win10 \
--ram 8192 \
--vcpus 4 \
--os-variant win10 \
--disk path=/var/lib/libvirt/images/win10.qcow2,format=qcow2 \
--cdrom /var/lib/libvirt/images/windows10.iso \
--network network=default \
--graphics vnc,listen=0.0.0.0,password=123456 \
--video qxl
这里的 ram 和 vcpus 都可以自由调整,当前示例是 8GB 内存和 4 个逻辑处理器。
正常输出如下:
WARNING Graphics requested but DISPLAY is not set. Not running virt-viewer.
WARNING No console to launch for the guest, defaulting to --wait -1
Starting install...
Creating domain... | 0 B 00:00:00
Domain is still running. Installation may be in progress.
Waiting for the installation to complete.
此时可以使用 VNC 客户端连接 ip:5900 进行安装,VNC 可以下载 tightvnc。
在 VNC 画面中完成 Windows 操作系统的安装, 注意选择专业版进行安装,因为家庭版不支持远程桌面连接。
最后终端输出应为
Domain has shutdown. Continuing.
Domain creation completed.
Restarting guest.
此时虚拟机会自动重启,再使用 VNC 连接即可。
启用 Windows RDP
登录 Windows → 打开设置 → 系统 → 远程桌面 → 打开允许远程桌面。
从外部访问 Windows 虚拟机
设置端口转发
sudo virsh net-update default add-last forward-port \
'<port protocol="tcp" hostport="3389" guestip="192.168.122.231" guestport="3389"/>' \
--live --config
sudo virsh net-destroy default
sudo virsh net-start default
其中 guestip 可以从 Windows 中获取,在本文中是 192.168.122.231。hostport 可以自行修改。
设置后应该就可以使用 RDP 进行连接了。
虚拟机开机自启
可以通过以下命令,让虚拟机在 Linux 服务器重启后自动启动
sudo virsh autostart win10
虚拟机配置修改(导出/导入)
使用 sudo virsh edit 有时候不太方便,可以使用以下命令导出到文件,再导入即可
sudo virsh dumpxml win10 > ~/win10.xml
sudo virsh define ~/win10.xml
本站不记录浏览量,但如果您觉得本内容有帮助,请点个小红心,让我知道您的喜欢。