欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

Python腳本判斷 Linux 是否運(yùn)行在虛擬機(jī)上

系統(tǒng) 1766 0

在 WebHostingTalk 論壇上有些國(guó)外奸商會(huì)把虛擬機(jī)當(dāng)作獨(dú)立服務(wù)器賣(mài),去年7月份的時(shí)候就有一位中國(guó)同胞上當(dāng)受騙,并在 WHT 上發(fā)帖聲討,證據(jù)確鑿,甚至連服務(wù)商自己也承認(rèn),回帖達(dá)355篇。這家獨(dú)立服務(wù)器/VPS 提供商 HostATree.com 居然大膽的把 OpenVZ VPS 這種一看就知道是虛擬機(jī)的虛擬機(jī)當(dāng)作獨(dú)立服務(wù)器賣(mài),暈,至少也要弄個(gè) VMWare/KVM/Xen HVM 吧(更難發(fā)現(xiàn)是虛擬機(jī)),用 OpenVZ 這種容器也太欺負(fù)人了:)昨天恰好收到網(wǎng)友一封郵件問(wèn)到了如何判斷自己買(mǎi)的是獨(dú)立服務(wù)器還是虛擬機(jī)的問(wèn)題。這里 VPSee 簡(jiǎn)單介紹一下市面上常用虛擬技術(shù)(包括容器技術(shù))的判別小技巧。

判斷 OpenVZ/Xen PV/UML

判斷 OpenVZ/Xen PV/UML 是最容易的,直接檢查 /proc 下的相關(guān)目錄和文件就可以知道,比如 OpenVZ VPS 上會(huì)有 /proc/vz 這個(gè)文件;Xen PV 虛擬機(jī)上會(huì)有 /proc/xen/ 這個(gè)目錄,并且目錄下有一些東西;UML 上打印 /proc/cpuinfo 會(huì)找到 UML 標(biāo)志。寫(xiě)了一個(gè)簡(jiǎn)單的 Python 腳本來(lái)檢測(cè):

復(fù)制代碼 代碼如下:

#!/usr/bin/python
# check if a linux system running on a virtual machine (openvz/xen pv/uml)

import sys, os

def main():
??? if os.getuid() != 0:
??????? print "must be run as root"
??????? sys.exit(0)

??? # check OpenVZ/Virtuozzo
??? if os.path.exists("/proc/vz"):
??????? if not os.path.exists("/proc/bc"):
??????????? print "openvz container"
??????? else:
??????????? print "openvz node"

??? # check Xen
??? if os.path.exists("/proc/xen/capabilities"):
??????? if (os.path.getsize("/proc/xen/capabilities") > 0):
??????????? print "xen dom0"
??????? else:
??????????? print "xen domU"

??? # check User Mode Linux (UML)
??? f = open("/proc/cpuinfo", "r"); t = f.read(); f.close()
??? if (t.find("UML") > 0):
??????? print "uml"

if __name__=="__main__":
??? main()


判斷 VMware/Xen HVM/KVM

如果使用的是 VMware/Xen HVM/KVM 這樣的全虛擬就更難判斷一些,最準(zhǔn)確的辦法是讀取 CPUID 來(lái)判斷,Xen 源代碼下面有一段檢測(cè)是否是 Xen 的 C 語(yǔ)言代碼 tools/misc/xen-detect.c,這段代碼提供了一個(gè)很好的例子,VPSee 重寫(xiě)了代碼,用宏替代了函數(shù),增加了對(duì) VMware 和 KVM 的識(shí)別,用 gcc 編譯后就可以運(yùn)行:

復(fù)制代碼 代碼如下:

/*
?* check if a linux system running on a virtual machine (vmware/xen hvm/kvm)
?*/
#include stdio.h
#include string.h

#define HYPERVISOR_INFO 0x40000000

#define CPUID(idx, eax, ebx, ecx, edx) \
??? asm volatile ( \
??????? "test %1,%1 ; jz 1f ; ud2a ; .ascii \"xen\" ; 1: cpuid" \
??????? : "=b" (*ebx), "=a" (*eax), "=c" (*ecx), "=d" (*edx) \
??????? : "0" (idx) );

int main(void)
{
??????? unsigned int eax, ebx, ecx, edx;
??????? char string[13];

??????? CPUID(HYPERVISOR_INFO, &eax, &ebx, &ecx, &edx);
??????? *(unsigned int *)(string+0) = ebx;
??????? *(unsigned int *)(string+4) = ecx;
??????? *(unsigned int *)(string+8) = edx;

??????? string[12] = 0;
??????? if (strncmp(string, "XenVMMXenVMM", 12) == 0) {
??????????????? printf("xen hvm\n");
??????? } else if (strncmp(string, "VMwareVMware", 12) == 0) {
??????????????? printf("vmware\n");
??????? } else if (strncmp(string, "KVMKVMKVM", 12) == 0) {
??????????????? printf("kvm\n");
??????? } else
??????????????? printf("bare hardware\n");

??????? return 0;
}


判斷 VirtualBox/Virtual PC

什么?這種家用桌面虛擬機(jī)自己裝的還會(huì)不知道?!如果不知道的話(huà)也有辦法,在 Linux 下運(yùn)行 dmidecode 工具然后查找 Manufacturer: innotek GmbH, Manufacturer: Microsoft Corporation 關(guān)鍵字就能對(duì)應(yīng)上 VirtualBox 和 Virtual PC.


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 午夜国产| 国产99久久精品一区二区永久免费 | 人人狠狠综合久久亚洲 | 亚洲第一女人av | 欧洲一区二区 | 国产精品久久久久亚洲 | 久久中文字幕一区二区三区 | 久草这里只有精品 | 欧美高清在线精品一区二区不卡 | 99亚洲视频 | 免费在线一级毛片 | 青青免费视频精品一区二区 | 日本亚洲一区 | 成人免费无毒在线观看网站 | 国产精品一区欧美激情 | 污污的网站免费观看 | 婷婷色综合 | 日韩男女做性高清在线观看 | 亚洲精品乱码 | 香蕉成人国产精品免费看网站 | 九九热免费视频在线观看 | 2018天天干夜夜操 | 国产一区二区精品在线观看 | 亚洲国产乱 | 亚洲天堂中文网 | 亚洲精品乱码久久久久久按摩观 | 日韩久久一区 | 国产日韩欧美中文 | 日本无码成人片在线观看波多 | 欧美激情一区二区亚洲专区 | 羞羞的视频在线免费观看 | www.热| 69av亚洲 | 五月婷婷综合网 | 国产在线激情视频 | 免费大片在线观看网站 | 亚洲人在线视频 | 国产中文欧美 | 亚洲欧美国产日产综合不卡 | 成人天堂网 | 日本天堂一区 |