Linux CPUInfo 视角开启 CPU 虚拟化
一 前置判断与快速检查
- 在 Linux 中,所谓“开启”虚拟化通常包含两步:在固件启用硬件虚拟化,以及在系统中加载相应内核模块。先用以下命令确认 CPU 是否具备并已被系统识别硬件虚拟化能力:
- 查看 CPU 标志位:grep -E ‘vmx|svm’ /proc/cpuinfo(出现 vmx 表示 Intel VT‑x,出现 svm 表示 AMD‑V)
- 查看虚拟化概述:lscpu | grep -i virtualization(应显示 VT‑x 或 AMD‑V;若显示 Hypervisor vendor: KVM/Xen 等,说明已在虚拟机中运行)
- 若 flags 中没有 vmx/svm,或 lscpu 未显示虚拟化类型,通常需要在固件中开启后再重启系统。
二 在 BIOS 或 UEFI 中启用虚拟化
- 重启主机,进入 BIOS/UEFI(常见按键:F2、DEL、ESC)。
- 在菜单中查找与虚拟化相关的开关,常见名称包括:Intel Virtualization Technology、VT‑x、AMD‑V、SVM Mode,将其设置为 Enabled。
- 保存设置并重启。再次进入系统后,用前述命令确认已生效。
三 在 Linux 内核加载虚拟化模块
- 确认 KVM 模块是否已加载:lsmod | grep kvm
- 未加载时按需加载:
- 通用:sudo modprobe kvm
- Intel:sudo modprobe kvm‑intel
- AMD:sudo modprobe kvm‑amd
- 检查内核接口:ls -l /dev/kvm(存在即表明 KVM 设备可用)。
四 验证与常见问题处理
- 快速验证:
- lscpu | grep -i virtualization(应见 VT‑x/AMD‑V)
- grep -E ‘vmx|svm’ /proc/cpuinfo(应见对应标志)
- 若运行在虚拟机中,lscpu 可能显示 Hypervisor vendor(如 KVM/Xen),这是正常现象。
- 若仍未生效,优先再次核对固件设置与重启;部分平台还需确保虚拟化相关选项(如 VT‑x/AMD‑V)未被其他安全策略屏蔽。