主机运维

kvm虚拟机安装

时间:2026-05-22 12:39:05   作者:网际迅联   来源:   阅读:146  
内容摘要:KVM 虚拟机安装指南KVM (Kernel-based Virtual Machine) 是基于 Linux 内核的开源虚拟化解决方案。以下是详细的安装步骤:? 安装前准备1. 验证CPU硬件虚拟化支持bash1# 检查CPU是否支持虚拟化2grep -Eoc '(vmx|sv......

KVM 虚拟机安装指南

KVM (Kernel-based Virtual Machine) 是基于 Linux 内核的开源虚拟化解决方案。以下是详细的安装步骤:

? 安装前准备

1. 验证CPU硬件虚拟化支持

首先确保CPU支持硬件虚拟化(Intel VT-x 或 AMD-V):

bash
1# 检查CPU虚拟化支持
2grep -Eoc '(vmx|svm)' /proc/cpuinfo
3
4# 或者使用
5lscpu | grep Virtualization
6
7# 如果输出大于0,表示支持虚拟化
8# vmx = Intel VT-x, svm = AMD-V
9

如果输出为 0,为检查失败,需要进入BIOS/UEFI开启虚拟化选项(通常在Configuration或Security菜单中)。

  • Intel CPU:启用 Intel VT-x / Intel Virtualization Technology
  • AMD CPU:启用 AMD-V / SVM

2. 检查KVM内核模块

bash
1# 查看已加载的KVM模块
2lsmod | grep -E '^(kvm|kvm_intel|kvm_amd)'
3
4# 手动加载模块(如未加载)
5sudo modprobe kvm
6sudo modprobe kvm_intel # Intel平台
7# 或
8sudo modprobe kvm_amd # AMD平台
9
10# 验验证 /dev/kvm 设备
11ls -l /dev/kvm
12

? Ubuntu/Debian 系安装

bash
1# 1. 更新软件包索引
2sudo apt update
3
4# 2. 安装KVM核心组件
5sudo apt install -y qemu-kvm virt-manager virt-install libvirt-daemon-system libvirt-clients bridge-utils
6
7# 3. 启动并启用libvirtd服务
8sudo systemctl enable --now libvirtd
9
10# 4. 将当前用户加入kvm和libvirt组
11sudo usermod -aG kvm,libvirt $USER
12
13# 5. 重新登录使组权限生效
14newgrp libvirt
15

? CentOS/RHEL 7/8 系安装

bash
1# CentOS 7 / RHEL 7
2sudo yum install -y qemu-kvm qemu-img virt-manager libvirt libvirt-python virt-install virt-viewer bridge-utils
3
4# CentOS 8 / RHEL 8 / Fedora
5sudo dnf install -y @virtualization
6
7# 启动并设为开机自启
8sudo systemctl enable --now libvirtd
9
10# 验证服务状态
11sudo systemctl status libvirtd
12
13# 验证KVM加速
14sudo virt-host-validate qemu
15

✅ 验证安装

bash
1# 检查libvirt连接
2virsh -c qemu:///system list
3
4# 检查KVM模块
5lsmod | grep kvm
6
7# 检查设备权限
8ls -l /dev/kvm
9

? 配置桥接网络(可选)

桥接模式允许虚拟机获取与宿主机同网段的IP地址,便于SSH、Web等双向通信。

bash
1# 1. 查看物理网卡名称
2ip -o link show | awk -F': ' '{print $2}' | grep -v '\(lo\|vir\|docker\|br\)' | head -n1
3
4# 2. 创建桥接接口配置(以CentOS 7为例)
5sudo vi /etc/sysconfig/network-scripts/ifcfg-br0
6
7# 配置内容示例:
8DEVICE=br0
9TYPE=Bridge
10BOOTPROTO=static
11IPADDR=192.168.1.100
12NETMASK=255.255.255.0
13GATEWAY=192.168.1.1
14ONBOOT=yes
15
16# 3. 修改原物理网卡配置,绑定至桥接
17sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
18# 添加:BRIDGE=br0
19
20# 4. 重启网络服务
21sudo systemctl restart network
22

? 创建虚拟机示例

bash
1# 创建磁盘镜像
2qemu-img create -f qcow2 /var/lib/libvirt/images/centos8.qcow2 20G
3
4# 安装虚拟机
5virt-install \
6 --name centos8 \
7 --ram 2048 \
8 --vcpus 2 \
9 --disk /var/lib/libvirt/images/centos8.qcow2,size=20 \
10 --cdrom /path/to/CentOS-8-x86_64-1905-dvd1.iso \
11 --network network=default \
12 --graphics none \
13 --console pty,target_type=serial \
14 --import
15

⚠️ 常见问题

问题 解决方案
kvm-ok 提示不支持 检查BIOS虚拟化是否开启,确认未被Hyper-V独占
virsh list 连接错误 检查libvirtd服务是否运行
磁盘路径权限问题 确保路径可写,或使用默认 /var/lib/libvirt/images/
virsh console 黑屏 修改GRUB添加 console=ttyS0,115200n8

安装完成后,您可以使用 virt-manager 图形界面或 virsh 命令行工具来管理虚拟机。需要进一步帮助创建虚拟机吗?
下面介绍创建 KVM 虚拟机详细指南

创建 KVM 虚拟机详细指南

以下是创建虚拟机的两种常用方式:


?️ 方式一:使用 virt-manager 图形界面

1. 启动 virt-manager

bash
1virt-manager
2

2. 创建步骤

  1. 点击 "新建虚拟机" 或按 Ctrl+N
  2. 选择安装方式:
    • 本地安装介质 (ISO) - 上传或选择ISO镜像文件
    • 网络安装 (PXE) - 从网络引导安装
    • 导入现有磁盘镜像 - 使用已创建的磁盘文件
  3. 选择ISO镜像文件(如 CentOS-8-x86_64-1905-dvd1.iso
  4. 设置操作系统类型和版本
  5. 配置CPU和内存:
    • CPU:建议2核以上
    • 内存:建议2048MB以上
  6. 创建虚拟磁盘:
    • 选择磁盘格式(qcow2推荐)
    • 设置磁盘大小(如20GB)
  7. 配置网络:
    • NAT模式(默认):虚拟机可访问外网,外部无法直接访问
    • 桥接模式:虚拟机与宿主机同网段,可被外部访问
  8. 开始安装

? 方式二:使用 virt-install 命令行

基础创建命令

bash
1virt-install \
2 --name centos8 \
3 --ram 2048 \
4 --vcpus 2 \
5 --disk path=/var/lib/libvirt/images/centos8.qcow2,size=20,format=qcow2 \
6 --cdrom /path/to/CentOS-8-x86_64-1905-dvd1.iso \
7 --network network=default \
8 --graphics vnc,listen=0.0.0.0 \
9 --noautoconsole
10

参数说明

参数 说明
--name 虚拟机名称
--ram 内存大小(MB)
--vcpus CPU核心数
--disk 磁盘路径、大小、格式
--cdrom ISO镜像路径
--network 网络配置
--graphics 图形界面类型
--noautoconsole 不自动打开控制台


? 常见操作系统创建示例

Ubuntu 20.04

bash
1virt-install \
2 --name ubuntu20 \
3 --ram 4096 \
4 --vcpus 2 \
5 --disk path=/var/lib/libvirt/images/ubuntu20.qcow2,size=30,format=qcow2 \
6 --cdrom /path/to/ubuntu-20.04.4-live-server-amd64.iso \
7 --network network=default \
8 --graphics vnc,listen=0.0.0.0 \
9 --noautoconsole
10

Windows 10

bash
1virt-install \
2 --name win10 \
3 --ram 8192 \
4 --vcpus 4 \
5 --disk path=/var/lib/libvirt/images/win10.qcow2,size=60,format=qcow2 \
6 --cdrom /path/to/Win10.iso \
7 --network network=default \
8 --graphics spice,listen=0.0.0.0 \
9 --os-variant win10 \
10 --noautoconsole
11

CentOS 8 Stream

bash
1virt-install \
2 --name centos8s \
3 --ram 3072 \
4 --vcpus 2 \
5 --disk path=/var/lib/libvirt/images/centos8s.qcow2,size=25,format=qcow2 \
6 --cdrom /path/to/CentOS-Stream-8-x86_64-boot.iso \
7 --network network=default \
8 --graphics vnc,listen=0.0.0.0 \
9 --noautoconsole
10

? 使用桥接网络

bash
1virt-install \
2 --name myvm \
3 --ram 2048 \
4 --vcpus 2 \
5 --disk path=/var/lib/libvirt/images/myvm.qcow2,size=20,format=qcow2 \
6 --cdrom /path/to/iso \
7 --network bridge=br0 \
8 --graphics vnc,listen=0.0.0.0 \
9 --noautoconsole
10

? 管理虚拟机常用命令

bash
1# 列出所有虚拟机
2virsh list --all
3
4# 启动虚拟机
5virsh start myvm
6
7# 关闭虚拟机
8virsh shutdown myvm
9
10# 强制关闭
11virsh destroy myvm
12
13# 查看虚拟机信息
14virsh dominfo myvm
15
16# 查看虚拟机配置
17virsh dumpxml myvm
18
19# 编辑虚拟机配置
20virsh edit myvm
21
22# 连接虚拟机控制台
23virsh console myvm
24
25# 设置开机自启
26virsh autostart myvm
27
28# 取消开机自启
29virsh autostart --disable myvm
30
31# 删除虚拟机
32virsh undefine myvm
33

? 无图形界面安装(纯文本模式)

bash
1virt-install \
2 --name centos8 \
3 --ram 2048 \
4 --vcpus 2 \
5 --disk path=/var/lib/libvirt/images/centos8.qcow2,size=20,format=qcow2 \
6 --cdrom /path/to/CentOS-8-x86_64-1905-dvd1.iso \
7 --network network=default \
8 --graphics none \
9 --console pty,target_type=serial \
10 --extra-args="console=tty0 console=ttyS0,115200n8"
11

? 连接VNC控制台

创建虚拟机后,使用VNC客户端连接:

bash
1# 查看虚拟机VNC端口
2virsh dumpxml myvm | grep vnc
3
4# 使用VNC客户端连接(如TigerVNC、TightVNC)
5# 默认端口:5900 + 虚拟机ID

声明:
1.本站主要是为了记录工作学习中遇到的问题,可能由于本人技术有限,内容难免有纰漏,一切内容仅供参考。
2.本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
3.本站所有原创作品,包括文字、资料、图片、网页格式,转载时请标注作者与来源。

------------------------------------------------------------------------------------------------


出处:网际迅联
网址1:https://www.wjxlkj.com

网址2:http://www.wjxlkj.cn


联系方式:

手机号码:13910758317

微信:13910758317

客服QQ:58053012


或下图二维码微信扫码或长按识别添加微信




上一篇:如何在Linux本地部署openclaw
下一篇:没有了


  TCP/IP备案号:京ICP备15035957号-3