服务器测评网
我们一直在努力

commandline创建虚拟机步骤详解,新手必看指南?

在Linux和Unix-like系统中,通过命令行创建虚拟机是一项高效且灵活的操作,尤其适合服务器环境或自动化部署场景,本文将以KVM(Kernel-based Virtual Machine)为例,详细介绍如何使用命令行工具完成虚拟机的创建、配置与管理,内容涵盖环境准备、磁盘创建、安装系统及后续优化等关键步骤。

commandline创建虚拟机步骤详解,新手必看指南?

环境准备与依赖安装

在使用KVM创建虚拟机前,需确保硬件支持虚拟化(CPU的VT-x/AMD-V功能),并安装必要的软件包,以Ubuntu系统为例,执行以下命令安装KVM及相关工具:

sudo apt update
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager

安装后,验证KVM模块是否加载:

lsmod | grep kvm

若输出包含kvm_intelkvm_amd,则表示环境就绪,将当前用户添加至libvirtkvm用户组,以避免权限问题:

sudo usermod -aG libvirt,kvm $USER
newgrp libvirt  # 重新加载用户组

创建虚拟机磁盘

虚拟机的磁盘文件通常采用qcow2格式,支持动态扩容和快照功能,使用qemu-img命令创建20GB的磁盘镜像:

qemu-img create -f qcow2 /var/lib/libvirt/images/ubuntu-vm.qcow2 20G

参数说明:

  • -f qcow2:指定磁盘格式为qcow2;
  • /var/lib/libvirt/images/:libvirt默认的虚拟机存储路径;
  • 20G:磁盘容量大小。

通过virt-install安装系统

virt-install是libvirt提供的虚拟机安装工具,支持通过ISO文件、PXE网络等方式引导安装系统,以下示例使用本地ISO文件安装Ubuntu Server:

sudo virt-install \
--name ubuntu-vm \
--ram 2048 \
--vcpus 2 \
--disk path=/var/lib/libvirt/images/ubuntu-vm.qcow2,format=qcow2 \
--cdrom /path/to/ubuntu-22.04.3-live-server-amd64.iso \
--network network=default \
--graphics none \
--console pty,target_type=serial \
--boot hd,cdrom,menu=on

参数解析:

commandline创建虚拟机步骤详解,新手必看指南?

  • --name:虚拟机名称,需唯一;
  • --ram/--vcpus:分配内存(MB)和CPU核心数;
  • --disk:指定磁盘路径及格式;
  • --cdrom:ISO镜像路径,用于系统安装;
  • --network:连接默认网络(需提前配置);
  • --graphics none:无图形界面,适合服务器环境;
  • --console:启用串口控制,便于查看安装日志。

安装过程中,可通过virsh console ubuntu-vm连接虚拟机控制台,跟随提示完成系统配置。

虚拟机管理基础命令

安装完成后,可通过virsh命令对虚拟机进行生命周期管理:

  1. 列出虚拟机
    virsh list --all  # 显示所有虚拟机(包括关闭状态)
  2. 启动/关闭/重启虚拟机
    virsh start ubuntu-vm
    virsh shutdown ubuntu-vm  # 正常关机
    virsh reboot ubuntu-vm
  3. 强制关机(相当于电源键)
    virsh destroy ubuntu-vm
  4. 删除虚拟机(需先关机)
    virsh undefine ubuntu-vm  # 删除配置文件
    rm /var/lib/libvirt/images/ubuntu-vm.qcow2  # 删除磁盘文件

虚拟机配置优化

磁盘扩容

若磁盘空间不足,可通过以下步骤扩容:

  • 使用qemu-img扩容磁盘文件:
    qemu-img resize /var/lib/libvirt/images/ubuntu-vm.qcow2 +10G  # 增加10GB
  • 进入虚拟机内部,使用fdiskparted调整分区表,并扩展文件系统(如resize2fs)。

快照管理

快照可保存虚拟机某个时间点的状态,便于回滚,创建快照:

virsh snapshot-create-as ubuntu-vm pre-install --description "Before installing apps"

列出快照:

virsh snapshot-list ubuntu-vm

恢复快照:

virsh snapshot-revert ubuntu-vm pre-install

网络配置

默认情况下,虚拟机通过NAT模式联网,若需桥接物理网卡,可修改网络配置文件:

commandline创建虚拟机步骤详解,新手必看指南?

virsh edit ubuntu-vm

<interface>标签中,将type改为bridge,并指定source为物理网卡(如br0)。

常见问题与解决方案

  1. 无法连接虚拟机控制台
    检查是否安装了virtinst工具包,并在virt-install命令中添加--console参数。

  2. 磁盘性能不佳
    可在--disk参数中添加io=threads,cache=none以优化性能,

    --disk path=/path/to/disk.qcow2,io=threads,cache=none
  3. CPU不兼容
    若虚拟机启动报错“CPU不支持所需功能”,可在virt-install中添加--cpu host以透传主机CPU特性。

通过命令行创建和管理虚拟机,虽然需要熟悉相关命令,但其灵活性和自动化能力远超图形界面工具,掌握上述操作后,用户可根据实际需求调整资源配置,并结合脚本实现批量部署,大幅提升运维效率。

赞(0)
未经允许不得转载:好主机测评网 » commandline创建虚拟机步骤详解,新手必看指南?