KVM常用命令有哪些?快速掌握必备操作?

KVM(Kernel-based Virtual Machine)是一种开源的虚拟化技术,它将Linux内核转化为一个Type-1(裸金属) hypervisor,允许用户在单个物理服务器上运行多个虚拟机(VM),KVM的优势在于其高性能、与Linux内核的深度集成以及丰富的管理工具,以下是KVM常用命令的详细说明,涵盖虚拟机管理、网络配置、存储管理及性能监控等场景,并结合表格形式清晰展示命令格式与功能。

kvm 常用命令
(图片来源网络,侵删)

虚拟机管理命令

虚拟机的生命周期管理是KVM操作的核心,包括创建、启动、停止、删除及状态查询等。

  1. 虚拟机创建
    使用virt-install命令可快速创建虚拟机,需指定镜像文件、内存大小、CPU核心数及磁盘路径等参数。

    virt-install --name vm1 --ram 2048 --vcpus 2 --disk path=/var/lib/libvirt/images/vm1.qcow2,size=20 --cdrom /path/to.iso --network network=default

    该命令创建一个名为vm1的虚拟机,分配2GB内存、2个vCPU、20GB磁盘,并从指定ISO文件启动,网络使用默认NAT模式。

  2. 虚拟机启动与关闭

    kvm 常用命令
    (图片来源网络,侵删)
    • 启动虚拟机:virsh start vm1
    • 正常关闭虚拟机:virsh shutdown vm1
    • 强制关闭(模拟电源键):virsh destroy vm1
  3. 虚拟机状态管理

    • 查看所有虚拟机状态(运行/关闭):virsh list --all
    • 查看特定虚拟机详细信息:virsh dominfo vm1
    • 暂停虚拟机:virsh suspend vm1
    • 恢复暂停的虚拟机:virsh resume vm1
  4. 虚拟机删除
    删除虚拟机前需确保已关闭,使用virsh undefine命令会删除虚拟机配置但保留磁盘文件;若需同时删除磁盘,需手动执行rm命令。

    virsh shutdown vm1
    virsh undefine vm1
    rm /var/lib/libvirt/images/vm1.qcow2

虚拟机磁盘管理

磁盘文件是虚拟机的核心组件,KVM支持多种磁盘格式(如qcow2、raw),常用命令如下:

  1. 磁盘格式转换
    使用qemu-img工具可转换磁盘格式,例如将raw格式转换为qcow2(支持快照、压缩等特性):

    kvm 常用命令
    (图片来源网络,侵删)
    qemu-img convert -f raw -O qcow2 disk.raw disk.qcow2
  2. 磁盘扩容
    扩容前需确保虚拟机内部文件系统支持在线扩容(如LVM或XFS),以下命令将磁盘扩容至30GB:

    qemu-img resize disk.qcow2 +10G  # 在原有大小上增加10GB
    qemu-img resize disk.qcow2 30G   # 直接设置为30GB
  3. 磁盘快照管理
    快照可保存虚拟机某个时间点的状态,支持创建、列表、删除及恢复操作:

    virsh snapshot-create vm1          # 创建快照
    virsh snapshot-list --domain vm1   # 列出快照
    virsh snapshot-revert vm1 snap0    # 恢复至快照snap0
    virsh snapshot-delete vm1 snap0    # 删除快照snap0

网络配置命令

KVM虚拟机网络通过libvirt的虚拟网络(如default NAT网络)或桥接模式实现。

  1. 查看虚拟网络

    virsh net-list --all
  2. 启动/停止虚拟网络

    virsh net-start default
    virsh net-destroy default
  3. 配置桥接网络
    若需虚拟机直接与物理网络通信,需创建桥接接口(如br0),并修改虚拟机XML配置文件:

    virsh edit vm1  # 在<interface>标签中将type="network"改为type="bridge",source bridge="br0"

性能监控命令

监控虚拟机性能是确保稳定运行的关键,常用工具包括virt-topvirshqemu-img

  1. 实时监控虚拟机资源
    virt-top类似于top命令,可实时显示CPU、内存、I/O等使用情况:

    virt-top
  2. 查看虚拟机CPU/内存使用率
    通过virsh命令可获取详细性能指标:

    virsh cpu-stats vm1
    virsh memstats vm1
  3. 磁盘I/O监控
    使用qemu-io测试磁盘读写性能:

    qemu-io -f qcow2 -c "read -v 1M 1G" disk.qcow2

常用命令速查

功能分类命令说明
虚拟机创建virt-install创建并启动虚拟机
启动虚拟机virsh start vm1启动指定虚拟机
关闭虚拟机virsh shutdown vm1正常关闭虚拟机
强制关闭virsh destroy vm1模拟电源键强制关闭
查看虚拟机列表virsh list –all列出所有虚拟机及其状态
删除虚拟机virsh undefine vm1删除虚拟机配置(保留磁盘)
磁盘格式转换qemu-img convert转换磁盘文件格式
磁盘扩容qemu-img resize调整磁盘大小
创建快照virsh snapshot-create vm1为虚拟机创建快照
查看虚拟网络virsh net-list –all列出所有虚拟网络
启动虚拟网络virsh net-start default启动指定虚拟网络
实时性能监控virt-top监控虚拟机资源使用情况

相关问答FAQs

Q1: 如何解决虚拟机启动失败提示“domain vm1 failed to allocate memory”的问题?
A: 该错误通常是由于物理机内存不足或虚拟机内存配置过大导致,可通过以下步骤解决:

  1. 检查物理机内存使用情况:free -h
  2. 减少虚拟机内存分配:修改虚拟机XML文件(virsh edit vm1),调整<memory><currentMemory>值,或使用virsh setmem vm1 --size 1024动态调整内存(需虚拟机运行中支持)。
  3. 若为KVM进程内存限制,可调整/etc/libvirt/qemu.conf中的memory参数并重启libvirtd服务。

Q2: 虚拟机磁盘空间不足时,如何在线扩容并扩展文件系统?
A: 在线扩容需分两步完成:磁盘扩容和文件系统扩展,以Linux虚拟机为例:

  1. 磁盘扩容:在宿主机中使用qemu-img resize命令扩容磁盘文件(如扩容至40GB):
    qemu-img resize /var/lib/libvirt/images/vm1.qcow2 40G
  2. 扩展文件系统:登录虚拟机内部,根据文件系统类型执行命令:
    • ext4文件系统
      lsblk  # 查看磁盘分区(如/dev/vda1)
      resize2fs /dev/vda1
    • LVM逻辑卷
      lvextend -l +100%FREE /dev/vg_root/lv_root
      resize2fs /dev/vg_root/lv_root
    • XFS文件系统
      xfs_growfs /

      完成后执行df -h验证文件系统是否扩容成功。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/458154.html<

(0)
运维的头像运维
上一篇2025-11-10 12:16
下一篇 2025-11-10 12:22

相关推荐

  • 坐标代码打字具体怎么操作?

    坐标代码打字是一种通过精确的坐标定位来实现文字输入的技术,常见于特定场景如编程模拟、自动化测试或复古系统操作,要掌握这一方法,需从坐标系统原理、代码实现步骤、实际应用场景及注意事项等多维度进行系统学习,以下将详细解析坐标代码打字的完整流程与操作细节,坐标系统的基本原理坐标代码打字的核心是建立二维或三维坐标系,通……

    2025-11-19
    0
  • 网站信息如何撤销?

    撤销网站上的信息是一个涉及法律、平台规则和技术操作的多步骤过程,具体方法取决于信息的类型(如个人数据、侵权内容、用户生成内容等)、所在平台(如社交媒体、电商平台、企业官网等)以及当地法律法规(如中国的《个人信息保护法》《网络安全法》,欧盟的GDPR等),以下是详细的操作步骤和注意事项,帮助您有效撤销信息,第一步……

    2025-11-17
    0
  • 企业网页栏目修改难?快速操作指南在这!

    企业网页作为企业对外展示形象、传递信息、开展线上业务的重要窗口,其栏目的设置是否合理直接影响用户体验和信息传递效率,随着企业业务发展、战略调整或用户需求变化,对网页栏目进行修改成为一项常态化工作,企业网页修改栏目并非简单的增删操作,而是需要系统规划、严谨执行的过程,涉及需求分析、方案设计、技术实现、内容迁移、测……

    2025-11-15
    0
  • 命令窗口复制粘贴怎么操作?

    在Windows操作系统中,命令窗口(也称为命令提示符或CMD)是许多用户和管理员经常使用的工具,它提供了基于文本的界面来执行各种命令和脚本,对于新手来说,命令窗口中的复制粘贴功能可能并不直观,因为它的操作方式与图形界面(GUI)应用程序有所不同,本文将详细介绍在命令窗口中进行复制粘贴的多种方法,包括快捷键、鼠……

    2025-11-13
    0
  • 织梦广告管理怎么用?新手入门指南?

    织梦广告管理系统(DedeCMS广告管理)是织梦内容管理系统(DedeCMS)中一个非常实用的功能模块,主要用于网站广告位的创建、广告内容的上传、广告投放时间的控制以及广告效果的统计等,通过该系统,网站管理员可以方便地管理网站上的各类广告,如图片广告、Flash广告、文字广告、代码广告等,实现对广告资源的精细化……

    2025-11-13
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注