根据不同虚拟化平台,常用命令包括VMware的vmrun、KVM的virt-install、VirtualBox的VBoxManage和Windows Hyper-V的New-VM,具体操作需结合系统环境和虚拟化软件版本。
创建虚拟机命令有哪些?先看主流平台差异
很多新手第一次接触虚拟化时,面对黑乎乎的终端窗口容易懵,其实所有创建虚拟机的命令都遵循一个底层逻辑:告诉虚拟化软件“我要多大内存、几颗CPU、装什么系统、硬盘放哪里”,搞懂这个逻辑,你就能看懂任何平台的命令结构。
虚拟机创建命令的核心结构
无论哪个平台,一条完整的创建命令通常包含以下要素:
- 虚拟机名称:用于管理台识别,不能与其他虚拟机重复
- CPU核心数:决定计算能力分配
- 内存大小:指定RAM容量,通常以MB或GB为单位
- 磁盘大小和路径:定义虚拟磁盘的存储位置和容量上限
- ISO镜像路径:操作系统安装源文件
- 网络配置:选择桥接、NAT还是仅主机模式
VMware命令行创建虚拟机怎么操作
VMware Workstation在图形界面操作很方便,但批量部署时命令行效率高得多,常用的工具是vmrun和vmcli(新版叫vmcli)。
用vmrun创建虚拟机的典型流程分为两步,先用vmcli创建VMX配置文件:
vmcli vm create --name "测试机器" --cpu 2 --memory 4096 --disk 40G --iso "/path/到/安装镜像.iso"
创建完成后,用vmrun启动虚拟机:
vmrun start /path/测试机器.vmx
注意,VMware的命令行工具需要提前在系统路径中配置好,Windows环境下通常在C:Program Files (x86)VMwareVMware Workstation目录下。
kvm创建虚拟机要什么命令?实操步骤拆解
Linux服务器上最常用的开源虚拟化方案是KVM(内核级虚拟机),创建KVM虚机的命令是virt-install,这条命令功能很强大,一个命令就能完成从定义到安装的全部流程。
基础版virt-install命令模板
一个最简单可用的KVM创建命令长这样:
virt-install
--name ubuntu-test
--ram 2048
--vcpus 2
--disk path=/var/lib/libvirt/images/ubuntu.qcow2,size=20
--os-variant ubuntu22.04
--network network=default
--graphics vnc,listen=0.0.0.0
--cdrom /tmp/ubuntu-22.04.iso
这条命令的意思是:创建一台叫ubuntu-test的虚拟机,给它2GB内存、2核CPU,磁盘用qcow2格式放在指定路径,VNC方式访问安装界面。
virt-install创建命令的进阶玩法
实际工作中,很多场景需要非交互式安装,常见做法是配合–location参数和kickstart文件:
virt-install --name centos7-01 --ram 4096 --vcpus 4 --disk path=/data/vm/centos7-01.qcow2,size=100 --location /opt/iso/CentOS-7-x86_64-Minimal.iso --extra-args "ks=http://192.168.1.10/ks/centos7.ks"
这样就能实现全自动安装,无需守在VNC前点击按钮,业内专家指出,批量交付VMware虚拟机时,这类命令搭配脚本使用,能将效率提升数倍。
virtualBox创建虚拟机用什么命令?跨平台方案解析
VirtualBox是很多个人开发者和测试人员的首选,因为它免费、轻量、支持Windows/Linux/macOS,对应的命令行工具是VBoxManage。
VBoxManage创建虚拟机步骤
用VirtualBox的命令行创建虚拟机分为三步:定义虚拟机、添加磁盘、配置镜像。
第一步,创建虚拟机定义:
VBoxManage createvm --name "Windows测试" --ostype Windows10_64 --register
第二步,添加虚拟硬盘:
VBoxManage createmedium disk --filename "Windows测试.vdi" --size 50000 --format VDI
VBoxManage storagectl "Windows测试" --name "SATA" --add sata --controller IntelAhci
VBoxManage storageattach "Windows测试" --storagectl "SATA" --port 0 --device 0 --type hdd --medium "Windows测试.vdi"
第三步,挂载安装镜像:
VBoxManage storageattach "Windows测试" --storagectl "SATA" --port 1 --device 0 --type dvddrive --medium /path/win10.iso
最后启动虚拟机:
VBoxManage startvm "Windows测试"
VBoxManage的优势在于跨平台一致性,你在Windows上学的命令,到了macOS上照样能用,对经常切换操作系统的开发者很友好。
Windows环境创建虚拟机命令行有哪些?Hyper-V实战
微软生态中的Hyper-V同样支持命令行操作,Hyper-V的PowerShell命令集非常完善,建虚机用New-VM cmdlet。
New-VM创建虚拟机命令标准写法
一个常用的Hyper-V创建虚拟机命令如下:
New-VM -Name "WebServer-01"
-MemoryStartupBytes 4GB
-BootDevice VHD
-VHDPath "D:Hyper-VVirtual Hard DisksWebServer-01.vhdx"
-Generation 2
-Switch "外部网络交换机"
这条命令创建了一台第二代虚拟机,分配4GB启动内存,使用固定的VHDX虚拟硬盘文件,并连接到了外部网络交换机。
Hyper-V查看虚拟机状态的命令
创建完之后,还需要确认是否运行正常,用Get-VM查看虚拟机列表和状态:
Get-VM -Name WebServer-01
用Start-VM启动:
Start-VM -Name WebServer-01
Hyper-V命令体系和VMware完全不同,如果你正在考虑从VMware迁移到Hyper-V,创建虚拟机命令会需要重新学习,不过PowerShell的可脚本化能力很强,适合批量运维场景,很多大中型企业采用超融合架构后,就倾向于用Hyper-V的PowerShell命令来统一管理云资源池。
创建虚拟机什么命令最常用?日常运维高频命令清单
综合来看,当前虚拟化市场上,日常工作中哪些命令出现频率最高?我根据自己在多个数据中心的运维经验,整理了以下高频命令清单。
| 操作场景 | KVM命令 | VMware命令 | Hyper-V命令 |
|---|---|---|---|
| 创建虚拟机 | virt-install | vmcli vm create | New-VM |
| 查看虚拟机列表 | virsh list –all | vmrun list | Get-VM |
| 启动虚拟机 | virsh start [名称] | vmrun start | Start-VM |
| 关闭虚拟机 | virsh shutdown [名称] | vmrun stop | Stop-VM |
| 删除虚拟机 | virsh undefine [名称] | vmrun delete | Remove-VM |
| 查看虚拟机配置 | virsh dumpxml [名称] | vmcli vm info | Get-VM | Select |
表中的命令是每个虚拟化管理员必须掌握的入门操作,很多公司招聘虚拟化运维岗位时,笔试题目就是让候选人手写这些命令。
创建虚拟机命令报错排查技巧
新手使用这些命令时最常遇到的坑:
command not found:说明虚拟机管理软件没装或没有加到PATH环境变量permission denied:权限不足,需要加sudo或以管理员身份运行PowerShellinvalid argument:参数拼写错误或格式不对,对照官方帮助文档逐项检查
遇到报错先别慌,用命令名 --help查看帮助信息,绝大多数问题都能在示例中找到解法。
镜像创建虚拟机要什么命令?从裸镜像到完整实例
还有一种常见需求已经有现成的系统镜像文件,想快速批量创建虚拟机,这在批量部署测试环境、做集群实验时非常实用。
从qemu-img创建带预装系统的虚拟机
KVM环境下,先用qemu-img创建空白磁盘:
qemu-img create -f qcow2 /vm/ubuntu-cloud.qcow2 20G
然后用virt-install配合cloud-init完成系统初始化:
virt-install
--name ubuntu-cloud
--memory 2048
--vcpus 2
--disk path=/vm/ubuntu-cloud.qcow2,format=qcow2
--import
--network network=default
--os-variant ubuntunoble
–import参数告诉virt-install:磁盘里已经有操作系统了,不用再挂安装盘,直接启动就行。
这种方式创建虚拟机速度极快,十几秒就能交付一台新机器,非常适合云计算实验,很多云服务商的后台,创建一台排队中的云服务器时,底层跑的就是类似命令。
复制现有虚拟机的命令方案
另一个常用技巧是复制已有虚拟机,KVM里可以用virt-clone命令快速克隆:
virt-clone --original ubuntu-base --name ubuntu-clone --file /vm/ubuntu-clone.qcow2
这样克隆出来的虚机会自动修改网络配置和主机名,避免冲突,比手动从零创建省时太多,很多运维人员在需要搭建高可用集群时,就用virt-clone批量生成节点,再逐台修改IP,整体交付时间能压缩到原来的三分之一。
创建虚拟机命令和图形界面比有什么优势
有些读者可能会问:“VMware Workstation图形界面拖一拖就能建虚机,为什么非要学命令?”这个问题问得好,我当年的感受也一样。
命令行创建虚拟机的不可替代场景
总结下来,命令行在以下场景占据绝对优势:
- 批量创建:同时交付10台虚机,图形界面要反复点鼠标,命令一个for循环搞定
- 远程服务器:云主机或物理服务器很多没有显示器,图形界面根本开不了,SSH进终端用命令是唯一路径
- 自动化运维:结合Ansible、Jenkins做CI/CD流水线,所有流程必须脚本化,图形界面无法嵌入
- 排障效率:命令行的报错信息往往比图形界面更详细,定位问题路径更短
行业共识认为,虚拟化方向的技术人员,命令行操作能力是衡量专业水平的重要标准之一,图形界面能让你入门,命令行能让你走远。
新手入门命令行创建虚机的学习路径
从一个新手成长为能独立用命令交付虚拟机的阶段,路径可以这样规划:
- 先装一个VirtualBox在本地折腾,VBoxManage命令全家桶过一遍
- 然后找一台Linux服务器装KVM,把virt-install参数穷举一遍
- 再把虚机的销毁重建流程反复操作,直到不看文档能一气呵成
- 最后用PowerShell在Windows Server上练Hyper-V命令
常见问题:创建虚拟机命令汇总
创建虚拟机命令在macOS上能用吗?
能用,VirtualBox的VBoxManage和KVM相关命令(在Linux虚拟机内)都支持macOS,不过macOS原生不支持Hyper-V,也没法直接装VMware Workstation,通常做法是在macOS上装UTM或Parallels,它们的命令行工具语法和VBoxManage略有差异,如果是管理远程的Hyper-V服务器,macOS上可以通过浏览器登录管理后台图形界面操作。
创建虚拟机命令如何传到远程服务器执行?
大部分场景默认你通过SSH已经登录到了宿主机,直接在终端粘贴命令即可,如果是写自动化脚本,用scp把脚本传到服务器再执行,或者通过CI/CD工具远程下发任务,有一点需要提醒:长时间执行virt-install这类命令时,建议配合tmux或screen使用,防止SSH断开导致正在运行的安装任务中断,之前我帮客户做迁移时,一条virt-install命令跑了40多分钟,这期间SSH一断,真个任务就卡在那边了。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/630447.html




