如何从命令行判断服务器是否启用了 KVM?

如何从命令行判断服务器是否启用了 KVM?

我正在尝试解决如何在 Docker 容器内运行 android 模拟器以便在 CI 构建中进行端到端测试的问题。

我发现的一个解决方案说它“需要在主机上启用 KVM”。

我可以通过 SSH 访问这台机器。

我如何知道 KVM 是否已启用?

我发现的所有资源都涉及启用 KVM,但我不想做任何更改,只想查看服务器的当前状态。谢谢

答案1

我认为最简单的检查就是文件是否/dev/kvm存在。

我根据 Github 文章进行了此研究 Docker 和 CoreOS 上的 QEMU/KVM

在大多数情况下,在 docker 中运行 kvm 相当容易。唯一真正的问题是 /dev/kvm(用于内核虚拟机管理程序访问的设备节点)未在 docker 中重新发布(或允许)。这意味着我们必须做两件事才能进行基本使用:

  • 创建设备节点
  • 使用 --privileged 执行 docker 容器

您还可以使用 kvm-ok 命令
这个答案 无论 KVM 存在与否,都用于生成命令的输出。

相关内容