在 Ubuntu 22.04 上安装 virsh
、配置网络,并创建一台 Windows 10 虚拟机的步骤如下:
1. 安装必要的软件包
首先,我们需要安装 virsh
和 KVM 虚拟化相关的软件包。
打开终端并执行以下命令:
sudo apt update
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager
qemu-kvm
:用于虚拟化的 QEMU/KVM 管理工具。libvirt-daemon-system
:Libvirt 是管理虚拟机的工具。libvirt-clients
:用于与 Libvirt 进行交互的命令行客户端(例如virsh
)。bridge-utils
:用于设置网络桥接。virt-manager
:图形界面的虚拟机管理工具(可选,但推荐)。
2. 启动和启用 libvirtd 服务
libvirtd
是 Libvirt 管理的虚拟化守护进程。执行以下命令启动并设置它开机自启:
sudo systemctl enable --now libvirtd
3. 配置网络桥接
默认情况下,虚拟机的网络连接是通过 NAT
进行的。如果你需要设置桥接网络(例如让虚拟机可以直接与局域网通信),你需要配置网络桥接。
首先,检查当前的网络配置:
ip a
找到你使用的网络接口(例如:eth0
或 enp3s0
)。然后,你需要配置网络桥接。在 Ubuntu 中,通常修改 /etc/netplan
配置文件。
例如,如果你的网络接口是 enp3s0
,你可以执行以下步骤:
-
编辑 Netplan 配置文件:
sudo nano /etc/netplan/00-installer-config.yaml
-
修改文件内容如下(假设你的网络接口是
enp3s0
):network: version: 2 renderer: networkd ethernets: enp3s0: dhcp4: no bridges: br0: interfaces: - enp3s0 dhcp4: yes
这里,
br0
是我们创建的网络桥接接口,enp3s0
是物理接口。 -
应用网络配置:
sudo netplan apply
-
验证网络桥接是否正常工作:
ip a
应该能看到
br0
接口并且它有一个 IP 地址。
4. 创建 Windows 10 虚拟机
4.1 下载 Windows 10 ISO
前往 Microsoft 官网 下载 Windows 10 ISO 文件。
4.2 使用 virt-manager
创建虚拟机
如果你安装了 virt-manager
,你可以使用图形界面来创建虚拟机:
-
启动
virt-manager
:virt-manager
-
在
virt-manager
中点击 "创建新虚拟机"。 -
选择 "本地安装媒体"(ISO 文件),然后选择你下载的 Windows 10 ISO。
-
分配 CPU 和内存资源(例如:2 核 CPU 和 4 GB RAM)。
-
创建虚拟硬盘(例如:60 GB)。
-
配置网络接口,选择桥接网络
br0
,这样虚拟机就可以直接与物理网络连接。 -
完成配置后,点击 "开始" 启动虚拟机并安装 Windows 10。
4.3 使用 virsh
创建虚拟机(命令行方式)
如果你更喜欢命令行,可以使用 virsh
创建虚拟机。以下是一个基本的示例:
-
创建虚拟机的 XML 配置文件。例如,创建一个名为
win10.xml
的文件:<domain type='kvm'> <name>win10</name> <memory unit='KiB'>4194304</memory> <!-- 4 GB RAM --> <vcpu placement='static'>2</vcpu> <!-- 2 CPUs --> <os> <type arch='x86_64' machine='pc-i440fx-2.9'>hvm</type> <boot dev='hd'/> </os> <devices> <disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/var/lib/libvirt/images/win10.qcow2'/> <target dev='vda' bus='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> </disk> <interface type='bridge'> <mac address='52:54:00:ea:4d:3e'/> <source bridge='br0'/> <model type='virtio'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> <cdrom device='cdrom'> <source file='/path/to/your/windows10.iso'/> <target dev='hdc' bus='ide'/> <readonly/> </cdrom> </devices> </domain>
memory
和vcpu
分别设置为 4 GB 和 2 CPU 核心。disk
设置为 60 GB,存储在/var/lib/libvirt/images/win10.qcow2
。interface
设置为桥接模式,桥接网络br0
。
-
创建虚拟硬盘文件:
sudo qemu-img create -f qcow2 /var/lib/libvirt/images/win10.qcow2 60G
-
定义并启动虚拟机:
sudo virsh define win10.xml sudo virsh start win10
-
如果你想连接到虚拟机的控制台,可以使用
virsh console
:sudo virsh console win10
-
完成 Windows 10 的安装。
5. 安装 virtio
驱动
在 Windows 10 虚拟机内,你可能需要安装 virtio
驱动程序来使虚拟化硬件(如网络、磁盘)正常工作。你可以从 Fedora virtio-win 项目 下载 virtio 驱动程序,并在 Windows 安装过程中加载这些驱动。
这样,你就完成了在 Ubuntu 22.04 上安装 virsh
、配置网络并创建一台 Windows 10 虚拟机的过程。如果有任何问题,欢迎继续提问!