检测Linux执行主机是否基于云

检测Linux执行主机是否基于云

目前,我正在通过运行 dmidecode -s bios-version 并对主要云供应商进行 grep 进行检查。前任: # From an amazon ec2 VM $ sudo dmidecode -s bios-version 4.2.amazon

是否有一个通用且更可靠的方法来找到这个?

答案1

云供应商没有将标识注入到正在运行的虚拟机中的标准机制。如果您的目标是检测您是否在虚拟环境中运行,您可以使用虚拟什么命令,但没有很好的方法来区分一个云供应商和另一个云供应商。

答案2

下面是一段代码,您可以使用它来检测流行的裸机供应商,例如 AWS、Azure、Google Cloud 和 Oracle。如果无法检测到云,这将返回 None。 https://github.com/nithinj/cloud_what

答案3

即使
lsmodazure 上的非 root 显示大量 hyperv/hv_ 引用,我假设 aws 将显示可以解释为 kvm 或 xen 的内容

(作为答案发布,因为我没有足够的代表)

相关内容