千家信息网

centos7上使用virt-install命令创建kvm虚拟机

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,一、使用virt-install命令创建虚拟机virt-install命令既可以交互运行,也可以以自动的方式创建与部署虚拟机系统,配合kickstart技术可以实现无人值守安装虚拟机操作系统。该命令提
千家信息网最后更新 2026年10月31日centos7上使用virt-install命令创建kvm虚拟机

一、使用virt-install命令创建虚拟机

virt-install命令既可以交互运行,也可以以自动的方式创建与部署虚拟机系统,配合kickstart技术可以实现无人值守安装虚拟机操作系统。该命令提供了很多选项,使用virt-install --help可以查看选选项和帮助

命令格式:

virt-install [选项]

-h 查看帮助

--connect=CONNECT 连接非默认的hypervisor,默认为qemu:///system

-n name 新的虚拟机主机实例名称

-r MEMORT 虚拟机内存设置

--arch=ARCH cpu架构

--machine=MACHINE 虚拟机模拟机类型,Xen或者KVM等。

--vcpus=VCPUS 虚拟主机CPU个数

-c CDROM 设置光盘镜像或光盘设备路径

-l LOCATION 指定安装源路径

--pxe 使用pxe协议启动

--import 导入现有的虚拟机

-x EXTRA 附加的内核参数,如-x "ks=http://server/server.ks"

--os-type=Type 操作系统类型,如linux、windwos等

--disk=DISKOPTS 设置虚拟机磁盘,如--disk /dev/storage/path

-w NETWORK 设置虚拟机网络,如-w bridge=br0

--noneworks 虚拟机不设置任何网络接口

-m MAC 设置虚拟机MAC地址

--vnc 设置通过vnc查看虚拟机

--hvm 使用全虚拟化技术

--paravirt 使用半虚拟化技术

--soundhw MODEL 设置声卡设备

--autostart 设置虚拟机为开机启动

官方帮助文档案例如下:


1)安装fedora 13,使用virtio 驱动的磁盘与网卡设备,创建8GB的存储文件,使用CDROM安装操作系统,使用VNC查看虚拟机界面

virt-install --connect qemu:///system --virt-type kvm --name demo --ram 500 --disk path=/var/lib/libvirt/images/demo.img,size=8 -graphics vnc --cdrom /dev/cdrom --os-variant fedora13


2)安装Fedora9 ,使用LVM分区,虚拟机网络设置为从PXE启动,使用vnc连接虚拟机界面:

virt-install --connect qemu:///system --name demo --ram 500 --disk path=/dev/HostVG/DemoVM --virt-type qemu --graphics vnc --os-variant fedora9

3)在真实的磁盘中安装虚拟机,使用默认QEMU hypervisor,使用SDL连接虚拟机界面通过远程初始化及安装

virt-install --connect qemu:///system --name demo --disk path=/dev/hdc --network brige=eno1 --arch ppc64 --graphics sdl --location  /linux/core/6/x86_64/os/

以下为在本地安装一台ubuntu虚拟机示意,

virt-install \\--connect qemu:///system                                     #连接默认本机hypervisor\--virt-type kvm                                              #虚拟化类型为kvm        \--vcpus=1                                                    #vcpu为1\--name unbuntu16                                             #虚拟机名称\--ram 512                                                                              #内存大小\--cdrom /var/lib/libvirt/images/ubuntu-16.04.5-server-amd64.iso                         #指定使用cdrom光驱启动,指定镜像路径\--disk path=/var/lib/libvirt/images/ubuuntu16.img,size=50,format=qcow2,bus=virtio       #指定硬盘路径,大小,格式为qcow2,总线类型为virtio\--network bridge=br0                                                                    #指定虚拟网络类型为网桥br0\--os-type=linux                                                                            #指定虚拟机操作系统类型为linux

然后跳出安装界面

然后使用virt-manger查看虚拟机硬件选项,与命令行配置一致


二、 virsh命令

virsh是非常优秀的hypervisor和虚拟主机的命令行管理工具,它是由libvirt-client软件提供的命令,可以使用该命令行工具替代图形界面的virt-manager工具

语法 virsh[选项] 命令 [参数]

cd 更改当前目录

connect 连接(重新连接)到 hypervisor

echo echo 参数

exit 退出这个非交互式终端

help 打印帮助

pwd 输出当前目录

quit 退出这个非交互式终端

常用命令:

list 列出正在运行的虚拟机列表

以下域其实就是domain,kvm中指虚拟机

autostart -自动开始一个域,配置虚拟机自启,--disable表示禁用自启动

connect - 连接(重新连接)到 hypervisor

dumpxml - XML 中的域信息,输出特定虚拟机XML格式的配置文件

create - 从一个 XML 文件创建一个域,新虚拟机

define - 从一个 XML 文件定义(但不开始)一个域

destroy - 销毁(停止)域

dominfo - 域信息

domid - 把一个域名或 UUID 转换为域 id

domstate - 域状态

edit - 编辑某个域的 XML 配置

reboot - 重新启动一个域

shutdown - 关闭一个域

destroy - 销毁(停止)域

start - 开始一个(以前定义的)非活跃的域

save - 把一个域的状态保存到一个文件

restore - 从一个存在一个文件中的状态恢复一个域

screenshot - 提取当前域控制台截图并保存到文件中

suspend - 挂起一个域

resume - 重新恢复一个域

setmem - 改变内存的分配

setmaxmem - 改变最大内存限制值

setvcpus - 改变虚拟 CPU 个数

vcpuinfo - 详细的域 vcpu 信息

attach-device - 从一个XML文件添加设备

net-create - 从一个 XML 文件创建一个网络

net-dumpxml - 输出XML格式的网络信息

net-list - 列出网络

net-start - 开始一个(以前定义的)不活跃的网络

iface-define-使用XML文件定义主机网络接口

iface-list - 物理主机接口列表

snapshot-create - 使用 XML 生成快照

snapshot-delete - 删除域快照

snapshot-dumpxml - 为域快照备份xml

snapshot-list - 为域列出快照


1)查看当前正在运行的虚拟机列表,查看所有的虚拟机列表

2)设置虚拟机为开机自启


3)备份虚拟机配置文件,将配置文件保存为ubuntu.xml

virsh dumpxml ubuntu16 > ubntu16.xml


4)查看虚拟机的基本信息

virsh dominfo 6


5)设定虚拟内存大小,最大内存以及vcpu个数,下次重启生效

virsh setmaxmem ubuntu16 1048576 --config                #单位为kB --config为下次启动生效virsh setmem ubuntu16 1048576 --configvirsh setvcpus unbuntu16 2 --config


三、虚拟存储

kvm存储池是被libvirt所管理的文件、目录或存储设备,存储池可以位于本地,也可以通过网络共享,存储池最终可以被虚拟机所使用。默认libvirt使用基于目录的存储池设计,/var/lib/libvirt/images目录就是默认的存储池。本地存储池可以是本地的一个目录、磁盘设备、物理分区或LVM卷,但是本地存储池不适合于大规模产品部署,也不支持虚拟机迁移功能。网络共享存储池使用标准的网络协议进行存储设备的共享,它支持SAN,IP-SAN,NFS,GFS2等协议。在kvm虚拟化技术中,存储池可以包含多个存储卷,对虚拟机而言,这些存储卷都被是被为物理硬件存储设备。

3.1 创建基于目录的虚拟存储池与存储卷

创建目录

mkdir /var/lib/libvirt/test

修改文件安全相关属性

chown root.root /var/lib/libvirt/test/chmod 700 /var/lib/libvirt/test/

使用virsh命令创建存储池,

virsh pool-define-as test --type dir --target /var/lib/libvirt/test/        #创建为目录类型的存储池virsh pool-build test                                                    #构建池virsh pool-start test                                 #激活virsh pool-autostart test                           #自动激活virsh pool-list

还有可以使用xml定义的方式创建存储池,首先创建一个名为test的xml文档

# cat test                        #定义类型为目录  test                  #定义名称为test                /var/lib/libvirt/test   #定义目录                   0700        -1        -1            

然后调用pool-create命令,加载xml文件

virsh pool-create testvirsh pool-list


然后再创建存储卷,格式为qcow2,大小为10G

virsh vol-create-as test vol-test.qcow2 10G --format qcow2            virsh vol-list test            #查看池下的卷


然后为虚拟机添加硬盘,将test存储池中的vol-test.qcow2卷作为硬盘添加到虚拟机ubuntu中

 virsh attach-disk\--domain ubuntu16                     #指定虚拟机\--source /var/lib/libvirt/test/vol-test.qcow2     #指定卷的路径\--target vdb                 #指定将硬盘识别为虚拟机的vdb\--targetbus virtio           #总线协议\--driver qemu                #驱动类型\--subdriver qcow2            #磁盘源的驱动类型\--sourcetype block           #磁盘源方式 file即文件设备,block为块设备\--cache none                 #不用缓存\--persistent                 #会让此操作同时对运行的虚拟机以及虚拟机的xml文件都会生效\--config                     #下次重启生效


此时登陆虚拟机,可以看到硬盘已经添加

存储 文件 命令 网络 目录 类型 设备 内存 磁盘 配置 主机 信息 格式 硬盘 系统 路径 操作系统 大小 快照 技术 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 北京路客互联网科技有限公司 高科技互联网 美国互联网保险保险科技 互联网电商科技 互联网科技财经 上海互联网科技有限公司 互联网 科技创新 互联网科技宣传片 佰商互联网科技有限公司 左右互联网络科技 开启互联网科技时代小说 字节跳动和互联网科技 银川新华互联网科技职业技术培训学校图片 受益于互联网科技的高速发展 互联网科技扶贫时间 深圳育鹏互联网科技有限公司招聘 上海科技产业互联网平台 萌小萌互联网科技河南有限公司 中国科技和美国互联网 科技互联网专业务虚会材料 广州淘业互联网络科技 蓝思科技飞鸽互联网 狮子座互联网科技培训 无锡溥仪互联网科技有限公司 互联网公司会议桌创意科技软装饰 阿大互联网科技有限公司 互联网行业科技股 雨阳互联网卡科技有限公司 黑云互联网科技有限公司 山东亿川互联网科技有限责任公司
0