ubuntu终端怎么创建kvm虚拟机
时间: 2025-04-19 11:47:35 浏览: 29
<think>嗯,用户问的是如何在Ubuntu终端中使用命令行创建KVM虚拟机。我需要先回忆一下相关的步骤,然后结合提供的引用内容来组织答案。
首先,用户提到他们使用的是Ubuntu Server 20.04 LTS,没有GUI,所以必须用命令行工具,比如virt-install。根据引用[2],安装KVM相关的软件包应该是第一步,包括qemu-kvm、libvirt-daemon-system、libvirt-clients和bridge-utils,可能还需要virt-install。然后启动libvirtd服务,并添加到用户组。
接下来,准备ISO镜像,用户需要下载操作系统的安装镜像,比如Ubuntu或Windows,这一步在引用[3]中有提到,使用wget下载。
然后是网络配置,可能需要配置桥接网络。引用[3]里提到了安装bridge-utils,并配置桥接接口,修改/etc/network/interfaces文件,创建桥接网桥br0,这样虚拟机可以通过桥接网络连接外部。
接下来是使用virt-install命令创建虚拟机。引用[1]和[3]都提到了这个命令的参数,比如--name、--ram、--vcpus、--disk指定磁盘路径和大小,--cdrom指定ISO镜像,--os-type和--os-variant指定操作系统类型,--network设置网络为桥接模式,--graphics设置图形界面参数,可能用vnc或者spice,还有--console配置控制台。最后指定--virt-type=kvm和--machine类型。
需要注意的是,如果用户有显卡直通的需求,可能需要额外的步骤,比如在引用[1]中提到的GPU直通,但用户的问题可能不需要这部分,但可以简要提及作为扩展。
最后,验证虚拟机是否正常运行,使用virsh list命令查看。可能还需要配置VNC客户端来连接虚拟机的图形界面,或者使用控制台访问。
用户可能需要的问题包括如何验证安装、如何配置桥接网络、如何管理虚拟机生命周期,以及优化方法如显卡直通等。需要确保所有步骤都正确引用提供的资料,并且语法正确,比如使用$$...$$格式的独立公式,但这里可能用不上数学公式,所以可能不需要。但需要检查是否有其他需要格式化的地方,比如代码块和命令参数的正确展示。</think>### 在Ubuntu终端中通过命令行创建KVM虚拟机的步骤
#### 1. **安装KVM及相关工具**
```bash
sudo apt update
sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-install
```
- `qemu-kvm` 提供虚拟化核心功能
- `libvirt` 用于管理虚拟机生命周期
- `virt-install` 是命令行创建虚拟机的工具[^2]
#### 2. **启动服务并添加用户组**
```bash
sudo systemctl start libvirtd
sudo systemctl enable libvirtd
sudo usermod -aG libvirt $USER # 将当前用户加入libvirt组
newgrp libvirt # 刷新用户组
```
#### 3. **准备ISO镜像**
下载操作系统安装镜像(例如Ubuntu或Windows):
```bash
wget -P /var/lib/libvirt/images/ https://example.com/path/to/os.iso
```
#### 4. **配置桥接网络**
编辑网络配置文件 `/etc/netplan/01-netcfg.yaml`,添加桥接接口:
```yaml
network:
version: 2
ethernets:
enp1s0: # 物理网卡名称
dhcp4: no
bridges:
br0:
interfaces: [enp1s0]
dhcp4: yes
```
应用配置:
```bash
sudo netplan apply
```
#### 5. **创建虚拟机磁盘**
```bash
sudo qemu-img create -f qcow2 /var/lib/libvirt/images/vm1.qcow2 20G
```
#### 6. **执行virt-install命令**
```bash
sudo virt-install \
--name=vm1 \
--ram=4096 \
--vcpus=2 \
--disk path=/var/lib/libvirt/images/vm1.qcow2,size=20 \
--cdrom=/var/lib/libvirt/images/ubuntu-22.04.iso \
--os-type=linux \
--os-variant=ubuntu22.04 \
--network bridge=br0 \
--graphics spice,listen=0.0.0.0 \
--console pty,target_type=serial \
--virt-type=kvm \
--machine=q35
```
- `--graphics` 指定图形界面协议(如SPICE或VNC)
- `--virt-type=kvm` 强制使用KVM加速[^1]
#### 7. **验证虚拟机状态**
```bash
virsh list --all # 查看所有虚拟机
virsh console vm1 # 连接控制台
```
---
阅读全文
相关推荐


















