虚拟机创建命令常用参数有哪些?操作步骤详解

虚拟机创建命令并没有统一的万能版本,关键在于你使用的虚拟化平台,但常用参数都围绕CPU、内存、磁盘、网络这四大核心资源展开,具体操作步骤则因工具而异。

如果你在Linux服务器上工作,大概率会碰到virt-install;如果你用的是Windows Server,那么PowerShell里的New-VM才是主角;至于开发测试场景,Vagrant这类命令则更轻量,下面我按场景拆开讲,每一步都给你能直接复制的命令。

QEMU虚拟机高级用法(参数分解版)
加载中
QEMU虚拟机高级用法(参数分解版)

虚拟机创建命令有哪些常用参数:以Linux平台KVM创建虚拟机命令virt-install为例

KVM是Linux内核自带的虚拟化模块,行业共识认为它目前是云服务器底层用得最广的技术之一,在命令行创建KVM虚拟机,最常用的工具就是virt-install,它的参数虽然多,但核心就几类,掌握了这些,虚拟机创建命令的常用参数你就懂了大半。

CPU与内存参数:决定这台虚拟机的基础算力

  • --vcpus:直接指定虚拟机的CPU核心数,比如--vcpus 4就是分配4个vCPU,你可以写成--vcpus 4,maxvcpus=8,这样虚拟机运行中能热添加CPU。
  • --memory:单位是KiB(千字节),日常用--memory 4096表示4GB内存,需要热插拔内存时,可以写成--memory 4096,maxmemory=8192

磁盘与存储参数:决定系统装在哪里

  • --disk path=/data/vms/centos7.qcow2,size=50:path是磁盘文件的完整路径,size单位是GB,表示创建一块50GB的qcow2格式虚拟磁盘,qcow2是KVM默认格式,支持写时复制和快照。
  • 更进阶一点的写法是--disk path=/data/vms/centos7-1.qcow2,size=50,format=qcow2,bus=virtio,其中bus=virtio是磁盘总线类型,半虚拟化性能好,如果不加,默认走IDE,速度差距挺明显。

网络参数:决定虚拟机怎么联网

  • --network network=default:这是最常用的,连接libvirt默认的NAT网络,虚拟机可以访问外网,但外部无法主动访问虚拟机。
  • --network bridge=br0:桥接模式,虚拟机直接暴露在物理局域网中,有自己的独立IP,生产环境对外提供服务一般用这个。
  • --network network=default,model=virtio:model指定网卡类型,virtio是半虚拟化网卡,性能远超默认的e1000。

其他必带参数:名字、内存、操作系统

--name是必填项,给虚拟机起个唯一的名字;--os-variant用来告诉virt-install你装的是什么系统,比如--os-variant centos7.0,这样它会自动优化CPU和驱动模型,不知道怎么写的,用osinfo-query os命令查询支持列表,还有安装源--cdrom或者--location,一个是本地ISO镜像路径,一个是网络安装源地址。

KVM创建虚拟机命令的完整操作步骤

理论说了一堆,直接看命令,下面我用一个实际例子演示完整流程,从检查环境到虚拟机开机。

虚拟机创建命令常用参数有哪些?操作步骤详解

  1. 检查CPU是否支持虚拟化,输入lscpu查看,如果输出里有vmx(Intel)或svm(AMD)标识,说明硬件支持。
  2. 确认KVM相关软件包装齐了,需要qemu-kvmlibvirt-daemonvirt-install,用yum install -y qemu-kvm libvirt-daemon virt-install安装(Ubuntu下是apt)。
  3. 启动libvirt服务并设置开机自启,执行systemctl start libvirtdsystemctl enable libvirtd
  4. 准备一个存放磁盘镜像的目录,比如mkdir -p /data/vms,这个路径最好有足够磁盘空间,用df -h提前看一下。
  5. 执行核心的虚拟机创建命令,下面是装一台CentOS 7.9虚拟机的完整命令:
virt-install 
--name centos7-test 
--memory 4096 
--vcpus 4 
--disk path=/data/vms/centos7-test.qcow2,size=50,format=qcow2,bus=virtio 
--network network=default,model=virtio 
--os-variant centos7.0 
--cdrom /data/iso/CentOS-7-x86_64-Minimal-2009.iso 
--graphics vnc,listen=0.0.0.0 
--noautoconsole

这条命令的含义是:创建一台叫centos7-test的虚拟机,4GB内存,4核CPU,50GB的virtio磁盘,NAT网络,从本地ISO镜像安装,VNC远程图形界面,不自动打开控制台。

  1. 查看虚拟机是否创建成功,执行virsh list --all,能看到centos7-test处于关闭状态就对了。
  2. 启动虚拟机并连接控制台,执行virsh start centos7-test,然后用virsh vncdisplay centos7-test查看VNC端口,用VNC客户端连接过去手动完成系统安装。

虚拟机创建命令有哪些常用参数:Windows平台Hyper-V新建虚拟机命令

如果你手头是Windows Server或者Win10/11专业版,走Hyper-V这条路更顺畅,Hyper-V用PowerShell命令操作,核心就是New-VM,网上搜“Hyper-V新建虚拟机命令”,搜出来基本都是它。

Hyper-V新建虚拟机命令的PowerShell参数清单

  • -Name:虚拟机名称,这是必填的。
  • -MemoryStartupBytes:启动内存大小,单位是字节,比如-MemoryStartupBytes 4GB,PowerShell里可以直接用GB单位。
  • -BootDevice:启动设备,可以是VHD(虚拟硬盘)或CD(光驱)。
  • -VHDPath:指定虚拟硬盘文件路径,配合-NewVHDPath-NewVHDSizeBytes使用,可以自动创建新硬盘。
  • -SwitchName:指定虚拟交换机名称,先在Hyper-V管理器里创建好虚拟交换机,然后用这个参数绑定,如果不指定,虚拟机就没有网络。
  • -Generation:指定第几代虚拟机。-Generation 2表示第二代,支持UEFI启动和安全启动,装新系统强烈建议用2代。

Hyper-V创建虚拟机的实际操作路径

虚拟机创建命令常用参数有哪些?操作步骤详解

  1. 以管理员身份打开PowerShell。
  2. 先确认Hyper-V功能已启用,执行Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All查看状态,如果未启用,用Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All启用并重启。
  3. 查看可用的虚拟交换机,执行Get-VMSwitch,记下你要用的交换机名称。
  4. 执行Hyper-V新建虚拟机命令,比如创建一个名为“WinServer2026”的虚拟机,4GB内存,绑定外部网络交换机:
New-VM -Name "WinServer2026" `
-MemoryStartupBytes 4GB `
-BootDevice VHD `
-NewVHDPath "D:Hyper-VWinServer2026.vhdx" `
-NewVHDSizeBytes 60GB `
-SwitchName "ExternalSwitch" `
-Generation 2
  1. 设置虚拟机从ISO镜像启动,把安装镜像挂载到虚拟光驱,执行Set-VMDvdDrive -VMName "WinServer2026" -Path "D:ISOWindowsServer2026.iso"
  2. 调整启动顺序,让光驱优先于硬盘,执行Set-VMFirmware -VMName "WinServer2026" -BootOrder $(Get-VMFirmware -VMName "WinServer2026").BootOrder,或者直接在Hyper-V管理器的固件设置里手动拖拽。
  3. 启动虚拟机,执行Start-VM -Name "WinServer2026",然后在Hyper-V管理器里双击连接窗口完成系统安装。

电脑创建虚拟机选哪个命令:开发测试场景下的轻量方案与其他选择

很多人在自己电脑上折腾虚拟机,问“电脑创建虚拟机选哪个命令”,如果不求完整的企业级功能,只求快速起一个环境,那Vagrant值得优先考虑,它有一套独立于底层虚拟化平台的命令体系。

Vagrant快速创建虚拟机的命令变化

  • vagrant init:初始化当前目录,生成Vagrantfile配置文件,比如vagrant init centos/7,意思是使用CentOS 7的官方镜像模板。
  • vagrant up:根据Vagrantfile配置创建并启动虚拟机。
  • vagrant ssh:直接SSH登录到虚拟机里。
  • vagrant halt:关闭虚拟机。
  • vagrant destroy:销毁虚拟机,不留痕迹。

Vagrant的好处是配置可以版本管理,团队协作时大家拉下来跑vagrant up,能得到完全一致的环境,它底层调用的还是VirtualBox或Hyper-V,这些虚拟机创建命令本身对你不可见,相当于多了一层自动化封装。

各平台虚拟机创建命令对比一览

虚拟机创建命令常用参数有哪些?操作步骤详解

场景 核心命令 配置文件格式 适合人群 上手难度
Linux服务器KVM virt-install 命令行参数 运维、云平台管理员 中等
Windows Hyper-V New-VM PowerShell命令 Windows管理员 中等
开发测试环境 vagrant up Vagrantfile 开发、测试工程师
桌面快速体验 VBoxManage createvm VirtualBox命令 个人用户

虚拟机创建命令记不住怎么办:用模板脚本固化常用参数

我见过不少人问“虚拟机创建命令参数太多记不住怎么办”,参数列表确实长,但不用硬背,行业内的常见做法是把虚拟机创建命令写成脚本或模板。

比如在Linux下,把常用配置写进一个Shell脚本,每次改个名字和IP就能复用:

#!/bin/bash
# 定义通用变量
VM_NAME=$1
VM_MEMORY=4096
VM_VCPUS=2
VM_DISK_PATH="/data/vms/${VM_NAME}.qcow2"
VM_ISO="/data/iso/CentOS-7-x86_64-Minimal-2009.iso"
virt-install 
--name ${VM_NAME} 
--memory ${VM_MEMORY} 
--vcpus ${VM_VCPUS} 
--disk path=${VM_DISK_PATH},size=50,format=qcow2,bus=virtio 
--network network=default,model=virtio 
--os-variant centos7.0 
--cdrom ${VM_ISO} 
--graphics vnc,listen=0.0.0.0 
--noautoconsole

保存为create-vm.sh,每次执行bash create-vm.sh centos7-node1就能快速拉起一台新虚拟机,PowerShell那边同理,把New-VM的参数封成函数放$PROFILE文件里,用的时候一行搞定。

虚拟机创建命令的常见疑问解答

虚拟机创建命令linux上与Windows上差异大吗?

差异很大,Linux主流是virt-installqemu-img等命令组合,参数风格类似GNU命令行工具,短横线加小写字母,Windows上主要用PowerShell的New-VM,参数叫-Name-MemoryStartupBytes,有鲜明的PowerShell风格,两者的底层原理虽然都是CPU虚拟化和内存隔离,但操作方式完全不同,需要花一点时间分别熟悉。

创建虚拟机时内存和CPU参数设置多大合适?

没有固定答案,主要看宿主机资源和虚拟机内业务需求,一个小规格的Linux测试机配2GB内存和2核CPU足够日常练习;跑Windows Server或者数据库系统,建议至少4GB起步,vCPU数量不宜超过宿主机逻辑核心总数的一半,否则多台虚拟机之间容易争抢资源,内存方面,行业内常用的做法是预留20%左右的宿主机内存不分配出去,避免物理内存耗尽触发SWAP导致整机卡顿。

virt-install和qemu-img什么关系?

两者是配合关系,qemu-img只负责创建和管理磁盘镜像文件,比如qemu-img create -f qcow2 disk.qcow2 50G,相当于先把硬盘生产出来,virt-install则是负责把CPU、内存、磁盘、网络组装起来并开始装系统,实际使用中,可以在virt-install的--disk参数里指定一个已存在的qcow2文件,也可以让它自动调用qemu-img创建,virt-install创建的磁盘默认在/var/lib/libvirt/images/目录下,建议生产环境自定义路径,方便管理。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/624637.html

(0)
cf一直连接服务器异常是怎么回事,如何解决?
上一篇 2026年9月5日 11:05
如何在pd虚拟机里流畅运行CAD软件?,虚拟机运行CAD卡顿怎么办?
下一篇 2026年9月5日 11:05

相关推荐

  • 香港大宽带服务器优势?香港大带宽服务器为什么受欢迎

    香港大宽带服务器之所以成为企业出海的首选基石,核心结论在于其具备“免备案极速部署、国际带宽互联互通、以及应对高并发流量的极致稳定性”,对于追求业务效率与用户体验的企业而言,它不仅是基础设施,更是业务增长的加速器,从业者在深度复盘时会发现,选择香港大宽带服务器,本质上是在购买“时间效率”与“网络自由度”,这在简米……

    2026年3月8日
    10900
  • access简易数据库怎么用?access数据库入门教程

    Access简易数据库是中小企业构建轻量级数据管理系统的最佳选择,它凭借低门槛、高集成度和零服务器成本的优势,完美解决了非技术人员处理复杂Excel表格时的痛点,在日常办公场景中,我们常常面临这样的困境:Excel文件越做越大,打开速度越来越慢,多用户同时编辑时更是容易冲突或丢失数据,这时候,将数据迁移至专业的……

    2026年7月3日
    3200
  • 带宽按量计费还是固定带宽划算?哪种计费方式更省钱?

    带宽按量计费还是固定带宽划算?核心结论先行:没有绝对的“划算”,只有最适合业务模型的“最优解”, 对于带宽需求稳定、峰值与均值差距小的业务,固定带宽具备极高的成本确定性,是传统企业的首选;而对于流量波动剧烈、有明显波峰波谷的互联网业务,按量计费能避免资源闲置,综合成本更低,决策的关键在于对自身流量曲线的精准分析……

    2026年3月8日
    12900
  • Gname域名注册到底多少钱?域名注册费用多少

    Gname域名注册价格因后缀不同而差异巨大,常见.com域名首年约55-65元人民币,.net约50-60元,而冷门或新顶级域名首年可能低至几元但续费昂贵,整体而言Gname以透明定价和免隐藏费用著称,在域名注册这个看似简单的数字资产买卖中,价格从来不是唯一的考量因素,但绝对是新手最容易踩坑的地方,很多人第一次……

    2026年6月24日
    1600
  • HTML如何定义网络音频?HTML5音频标签用法

    HTML定义网络音频的核心在于使用标签及其属性(如src、controls、autoplay)来嵌入并控制媒体文件,它通过浏览器原生支持实现了无需插件的跨平台音频播放体验,在2026年的互联网内容生态中,音频不再是视频的背景板,而是独立的内容载体,从播客复兴到有声书普及,再到交互式音频游戏,网络音频的应用场景极……

    服务器宽带 2026年6月7日
    3500
  • Joomla教程,如何开启内容版本控制?Joomla版本控制怎么设置

    在Joomla中使用内容版本控制的核心方法是:通过后台编辑器的“版本历史”功能查看、比较并恢复任意历史版本,从而确保网站内容的安全性与可追溯性,对于许多网站管理员而言,Joomla的内容管理系统(CMS)以其灵活性和扩展性著称,但随之而来的内容管理挑战也不容忽视,特别是在团队协作或频繁修改的场景下,误删关键段落……

    2026年6月25日
    1900
  • 服务器带宽升级亲身经历分享,服务器带宽升级需要注意什么

    服务器带宽升级的核心价值在于解决业务瓶颈与提升用户体验,而非单纯增加数字,经过多次实战操作验证,带宽升级若缺乏精准评估与配套优化,极易陷入“升级即浪费”的误区,真正有效的带宽升级,必须建立在流量模型分析与架构优化的基础之上,实现成本与性能的最佳平衡,核心结论:带宽升级是业务增长的必经之路,但必须遵循“监测先行……

    2026年3月8日
    11300
  • html悬浮图片事件怎么解决?如何实现图片悬浮跟随滚动

    HTML悬浮图片在网页中实现时,核心在于使用CSS的position: fixed属性结合z-index层级控制,并需特别注意移动端触控体验与SEO权重的平衡,避免被搜索引擎判定为干扰用户体验的恶意弹窗,在现代网页设计中,悬浮图片(Floating Image)常被用于展示促销信息、客服入口或品牌Logo,随着……

    2026年6月7日
    3400
  • HTML静态网页框架怎么搭建?零基础快速入门教程

    HTML静态网页框架是构建网站的基础骨架,它通过语义化标签和标准化结构,确保内容在搜索引擎中具备极高的可读性与抓取效率,是2026年SEO优化的核心基石,在2026年的数字营销环境中,搜索引擎算法已经进化到能够深度理解网页结构的程度,对于许多开发者而言,HTML不再仅仅是标记语言,而是决定网站能否获得高排名的……

    2026年6月4日
    3700
  • html文件怎么上传到服务器?如何将html网页部署到服务器

    将HTML文件上传到服务器的最核心方法是使用FTP客户端(如FileZilla)或服务器自带的文件管理器,通过建立连接后拖拽文件至网站根目录即可完成部署,很多初学者在制作好第一个网页后,面对空荡荡的服务器后台往往感到无从下手,这就像把做好的家具搬进新房子一样,只要找到正确的入口和搬运工具,过程并不复杂,我们将通……

    2026年6月11日
    6300

发表回复

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