在 CentOS 上配置虚拟机,常见做法是在宿主机上启用虚拟化后,使用 KVM/QEMU + libvirt 搭建虚拟化平台,配合 Virt-Manager 进行图形化管理;也可选用 VMware Workstation/VirtualBox 在 CentOS 上运行其他系统的虚拟机。下面给出两种路径的实操步骤与要点。
方案一 在 CentOS 宿主机上搭建 KVM 虚拟化
- 检查并启用虚拟化
- 确认 CPU 支持:egrep -c ‘(vmx|svm)’ /proc/cpuinfo,返回值大于 0 表示支持;如为 0,需在 BIOS 中开启虚拟化(Intel VT-x/AMD-V)。
- 安装虚拟化组件
- 安装 KVM 与工具:sudo yum install -y qemu-kvm libvirt libvirt-python libguestfs-tools virt-install
- 启动并开机自启:sudo systemctl start libvirtd && sudo systemctl enable libvirtd
- 图形化管理(可选):sudo yum install -y virt-manager
- 创建与管理虚拟机
- 图形界面:运行 virt-manager,按向导创建(选择 ISO、分配 CPU/内存/磁盘、设置网络)。
- 命令行示例(安装最小化 CentOS 7):
virt-install \
--name centos-vm \
--ram 2048 \
--disk path=/var/lib/libvirt/images/centos-vm.qcow2,size=20 \
--vcpus 2 \
--os-type linux \
--os-variant centos7.0 \
--network bridge=br0 \
--graphics none \
--console pty,target_type=serial \
--location 'http://mirror.centos.org/centos/7/os/x86_64/' \
--extra-args 'console=ttyS0,115200n8 serial'
- 常用运维:
- 列出/启动/进入控制台:virsh list --all、virsh start 、virsh console
- 快照与备份:virsh snapshot-create-as --domain snap1 “Snapshot 1”;导出/恢复:virsh dumpxml > /backup/.xml、virsh define /backup/.xml。
方案二 在 CentOS 上运行其他系统的虚拟机(VMware/VirtualBox)
- 安装虚拟化软件
- VMware Workstation Pro:下载安装包,按向导完成安装。
- VirtualBox:下载安装包,按向导完成安装。
- 创建与安装
- 新建虚拟机,选择 CentOS 安装镜像 ISO,按需配置 内存/CPU/磁盘(建议至少 2GB 内存、20GB 磁盘)。
- 启动后进入安装界面,完成语言、时区、分区、用户与 root 密码设置。
- 基础系统配置
- 更新与常用工具:sudo yum update -y && sudo yum install -y wget vim net-tools
- 网络:使用 nmcli/nmtui 配置 DHCP/静态 IP、主机名与 DNS。
网络配置要点
- 虚拟机网络模式选择
- NAT:虚拟机可访问外网,外部默认无法直接访问虚拟机,适合上手与对外隔离场景。
- 桥接(Bridged):虚拟机直接接入局域网,获取与物理机同网段地址,便于被外部访问与测试。
- Host-Only:仅宿主机与虚拟机互通,适合封闭内网实验。
- 在宿主机搭建桥接(KVM 场景)
- 在虚拟机内配置 IP(以 CentOS 7 为例)
磁盘扩容与常用维护
- VMware 虚拟机磁盘扩容(以 CentOS 7 LVM 为例)
- 宿主机侧:关机后在 VMware 设置中扩展虚拟磁盘容量(如 30G → 50G)。
- 系统侧:
- 分区扩容:使用 fdisk /dev/sda 新建分区(如 sda3),写入分区表并重启。
- 加入 LVM:初始化物理卷 pvcreate /dev/sda3;扩展卷组 vgextend centos /dev/sda3。
- 扩展逻辑卷与文件系统:例如 lvextend -L +9G /dev/mapper/centos-root;文件系统为 XFS 时执行 xfs_growfs /dev/mapper/centos-root;最后 df -h 验证。
- 常用维护
- 安全与合规:sudo systemctl start firewalld && sudo systemctl enable firewalld;按需放行服务(如 firewall-cmd --permanent --add-service=http 后 firewall-cmd --reload);SELinux 可用 sestatus 查看,临时 setenforce 0,永久修改 /etc/selinux/config。
- 备份与恢复:KVM 可用 virsh snapshot-create-as、virsh dumpxml/define 实现快照与配置级备份。