CentOS 7如何安装KVM虚拟机?从环境检测到成功安装指南

星萱大大_8719

星萱大大_8719

2026-11-09

863人浏览

原创

必须先确认CPU支持虚拟化(egrep -c '(vmx|svm)' /proc/cpuinfo > 0)、关闭SELinux和firewalld、安装qemu-kvm/libvirt/virt-install/bridge-utils/virt-manager、启动libvirtd服务、加载kvm及kvm_intel模块、将用户加入libvirt和kvm组并重新登录、启用default NAT网络,最后用virt-manager图形向导完成创建与安装。

centos 7如何安装kvm虚拟机?从环境检测到成功安装指南

要在CentOS 7上真正跑起一台KVM虚拟机,必须先确认硬件能“扛得住”、系统没设拦路虎、软件包装得全、服务启得稳——漏掉任一环,virt-install命令执行到一半就卡死或报错“connection refused”,连图形界面都打不开。

检查CPU是否支持虚拟化并开启必要系统功能

打开终端,运行:
egrep -c '(vmx|svm)' /proc/cpuinfo

输出大于0才代表CPU硬件支持;若为0,需关机进BIOS开启Intel VT-x或AMD-V(VMware中创建的宿主机则要右键虚拟机→设置→处理器→勾选全部三项虚拟化选项)。

关闭SELinux:执行 setenforce 0 立即生效,再编辑 /etc/selinux/config,把 SELINUX=enforcing 改成 【SELINUX=disabled】,否则后续virt-manager连接libvirtd会因权限拒绝而失败。

检查当前防火墙状态:systemctl is-active firewalld。若返回 active,建议执行 systemctl stop firewalld && systemctl disable firewalld ——不是所有网络桥接场景都受它影响,但默认规则常拦截VNC端口5900+,导致图形安装黑屏。

安装KVM核心组件与图形管理工具

执行以下命令一次性装齐生产环境所需套件:
yum -y install qemu-kvm libvirt virt-install bridge-utils virt-manager libguestfs-tools-c

注意:不要只装 yum groupinstall "Virtualization Host" ——该组在部分CentOS 7.9镜像中缺 virt-manager 图形前端,装完仍无法调出虚拟系统管理器。

启动并设为开机自启:
systemctl start libvirtd → systemctl enable libvirtd

验证KVM内核模块是否加载:
lsmod | grep -E 'kvm_(intel|amd)|kvm'
必须同时看到 kvm 和 kvm_intel(或kvm_amd)两行输出,缺一不可。若只有kvm无kvm_intel,手动执行 modprobe kvm_intel 再检查。

配置用户权限与默认网络桥接

若非root用户操作,必须加入两个关键用户组:
usermod -aG libvirt $USER → usermod -aG kvm $USER

CentOS Linux 7.9.2009
CentOS Linux 7.9.2009

CentOS Linux 7.9.2009是传统CentOS Linux 7的最后主要版本,也是很多企业历史服务器中仍可能遇到的系统版本。它以稳定、兼容RHEL 7生态、文档丰富和软件支持广泛著称,曾长期用于Web服务、数据库、虚拟化节点和企业内部业务系统。不过CentOS Linux 7已于2024年6月30日停止维护,现在继续使用会面临安全补丁缺失风险。该版本更适合旧业务迁移、历史环境恢复或离

下载

执行后需完全退出当前SSH会话或图形桌面,重新登录才能生效——这是最容易忽略的一步,不重登会导致virt-manager启动时报“Failed to connect socket to '/var/run/libvirt/libvirt-sock'”。

启用默认NAT网络(无需手动配桥):
virsh net-start default → virsh net-autostart default

这一步让新虚拟机能自动通过宿主机上网,避免初学者一上来就折腾br0桥接导致SSH断连。默认网络已内置DHCP服务,虚拟机装系统时就能自动获取IP。

使用virt-manager图形界面创建并安装虚拟机

第一步:在终端输入 virt-manager,等待窗口弹出;若报错“Unable to open display”,说明没走图形会话,改用 ssh -X 连接或直接在宿主机桌面环境操作。

第二步:点击左上角“文件”→“新建虚拟机”→选择“本地安装介质(ISO映像)”→点击“浏览”→点左下角“+”号新建存储池。

第三步:类型选“文件系统目录”,名称填 vmpool,目标路径填 /var/lib/libvirt/images(或你自建的 /home/kvm/images),点击“完成”;再点该池右侧“+”号新建卷,命名 centos7.qcow2,容量设20 GiB,格式选 qcow2。

第四步:回到新建向导,选中刚创建的 centos7.qcow2 卷,继续下一步;指定ISO路径(如 /root/CentOS-7-x86_64-DVD-2009.iso),确保该ISO文件属 root:root 且权限为 644,否则点击“前进”时会提示“Permission denied”。

第五步:内存调至2048 MiB、CPU设2核,网络保持“NAT方式”,勾选“在安装前自定义配置”→点“完成”→进入高级配置页,在“CPUs”页把“复制主机CPU配置”打钩,防止CentOS 7安装内核panic;最后点“开始安装”,图形安装界面即出现。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
centos
centos

PHP中文网为大家提供centos相关信息,CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一,是免费的、开源的、可以重新分发的开源操作系统,PHP中文网提供centos相关文章,以及安装教程。

2023.06.16

3389

10

常见的linux系统有哪些
常见的linux系统有哪些

linux系统有Ubuntu、Fedora、CentOS、Debian、openSUSE、Arch Linux、Gentoo、Slackware、Linux Mint、Kali Linux。更多关于linux系统的文章详情请阅读本专题下面的文章。php中文网欢迎大家前来学习。

2023.10.27

7201

23

CentOS安装部署教程精选
CentOS安装部署教程精选

CentOS安装部署专题提供 CentOS Stream 9/10 服务器安装与初始化配置教程,涵盖 ISO 镜像下载、系统分区、最小化安装、网络配置、SSH远程连接、防火墙、软件源、时区同步、用户权限和常见安装故障排查,适合新手搭建 Linux 服务器环境及运维人员快速部署 CentOS 系统。

2026.05.29

214

10

CentOS运维命令大全
CentOS运维命令大全

CentOS运维命令专题整理 CentOS 服务器日常管理常用命令,覆盖系统信息查看、用户与权限管理、服务启动停止、进程监控、端口查看、日志分析、磁盘空间清理、软件包安装、定时任务配置和故障排查方法,帮助运维人员高效完成 CentOS 系统维护工作。

2026.05.29

188

10

CentOS建站环境搭建实战教程
CentOS建站环境搭建实战教程

CentOS建站环境专题围绕服务器网站部署场景,系统讲解在 CentOS 上安装和配置 Nginx、Apache、PHP、MySQL、MariaDB、PHP-FPM、SSL证书、网站目录权限、虚拟主机、反向代理和 WordPress 等常见建站环境,适合个人站长和运维人员搭建稳定 Web 服务。

2026.05.29

223

10

Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

2026.11.06

40

12

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

2026.11.06

20

13

Postman接口请求发送教程
Postman接口请求发送教程

详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。

2026.11.06

20

10

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

40

12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
CentOS 官方文档
CentOS 官方文档

共0课时 | 0人学习

c语言项目php解释器源码分析探索
c语言项目php解释器源码分析探索

共7课时 | 0.5万人学习