linux – 如何检测脚本是否在虚拟机上运行?
发布时间:2020-12-13 16:57:01 所属栏目:Linux 来源:网络整理
导读:我不认为这个问题需要任何解释. 我正在编写一个可以启动虚拟机来模拟网络的软件.如果软件已在虚拟机上运行,??我想禁用此功能. 我已经读过这篇文章了:How to detect if my application is running in a virtual machine? 但是我需要在Linux上做这个,而那篇文
我不认为这个问题需要任何解释.
我正在编写一个可以启动虚拟机来模拟网络的软件.如果软件已在虚拟机上运行,??我想禁用此功能. 我已经读过这篇文章了:How to detect if my application is running in a virtual machine? 我正在将其标记为Perl问题,因为我要在Perl中执行此操作,但可能在proc或其他地方有一些文件要检查,并且对于所有语言都是相同的.我其实不知道. 我有兴趣主要检测VirtualBox和KVM,因为那些是我正在使用的VM. 那么,有什么建议吗? 解决方法
我将特别讨论运行Linux作为客户操作系统的VMware和虚拟Box虚拟机.
如果您运行以下命令,您将了解底层硬件是VMware / VirtualBox,它证明它是虚拟机. 对于VMware客户: # dmidecode | grep -i product Product Name: VMware Virtual Platform 对于Virtual Box客户: # dmidecode | grep -i product Product Name: VirtualBox “dmidecode”是一个linux系统命令.您可以在脚本的开头使用perl run dmidecode并提取值.如果它是虚拟机,则脚本应该退出而不进一步执行. 我没有任何其他虚拟机管理程序可以让你获得上面的命令返回它们. 希望这可以帮助. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |