Logo迷失博客
返回文章列表
常用工具阅读时长:2 分钟

检测 Linux VPS 是 Xen、OpenVZ 还是 KVM 架构的方法

发布时间:2024年07月04日 08:00最后修改:2026年09月15日 06:15

使用 virt-what 工具快速检测 Linux VPS 的底层虚拟化架构(KVM / Xen / OpenVZ)。

virt-what 官方项目主页:https://people.redhat.com/~rjones/virt-what/

官方源码归档:https://people.redhat.com/~rjones/virt-what/files/

一、安装

1.1 使用内置软件包管理器安装(推荐)

# CentOS
sudo yum install virt-what
# Ubuntu
sudo apt-get install virt-what

1.2编译安装

wget http://people.redhat.com/~rjones/virt-what/files/virt-what-1.26.tar.gz
tar zxvf virt-what-1.26.tar.gz
cd virt-what-1.26/
./configure
make
make install # 其实不需要安装,下面有步骤,核心就是一个 virt-what-cpuid-helper

经过上面的编译,会生成一个 virt-what-cpuid-helper 的程序,将其拷贝到 /usr/local/libexec 下:

sudo cp virt-what-cpuid-helper /usr/local/libexec

然后执行 virt-what 就就可以了,它是一个 Bash 脚本。

二、使用

virt-what
bash ./virt-what

反馈:KVM 说明当前的 VPS 采用的是 KVM 虚拟化技术。

三、遇到的问题

运行 shell 脚本时报错 [[ : not found 解决方法 在运行至判断表达式时报错,sh 命令无法识别 [[]] 表达式。

最终也找到了问题的解决办法:bash 与 sh 是有区别的,两者是不同的命令,且 bash 是 sh 的增强版,而 [[]] 是 bash 脚本中的命令,因此在执行时,使用 sh 命令会报错,将 sh 替换为 bash 命令即可:bash ./virt-what

推荐阅读