Linux虚拟机判断方法分享——让你轻松搞定 (如何判断linux 虚拟机)

在云计算和服务器虚拟化时代,Linux虚拟机的使用越来越普遍。对于一些管理员来说,确定一台机器是否是虚拟机具有相当的重要性。因为在虚拟化环境中,一些物理机器上正常运作的命令,却在虚拟机上不能正常工作,这样就会对业务造成隐患甚至出现严重的故障。

那么如何判断一台机器是否为Linux虚拟机呢?下面将会分享一些方法。

1.查看dmidecode命令输出信息

在Linux系统中,可以通过dmidecode命令来查看机器的DMI(Desktop Management Interface,桌面管理接口)信息。而DMI信息是由BIOS存储的硬件信息,它包含了机器厂商、型号等信息。

在命令行中输入命令:

“`

sudo dmidecode | more

“`

可以查看到一些属于BIOS的信息以及有关虚拟化的信息,例如:

“`

DMI type 1, 27 bytes.

System Information

Manufacturer: VMware, Inc.

Product Name: VMware Virtual Platform

Version: None

Serial Number: 68 1c 01 3b 2d 11 fe bc-86 5c 8b a5 db e0 7d 5e

UUID: 564D1A36-477D-8204-4C4D-6A35E6E79812

Wake-up Type: Power Switch

SKU Number: Not Specified

Family: Not Specified

DMI type 15, 29 bytes.

System Event Log

Area Length: 0 bytes

Header Start Offset: 0x0000

Header Length: 16 bytes

Data Start Offset: 0x0010

Access Method: OEM-specific

Access Address: 0x0000

Status: Valid, Not Full

Change Token: 0x00000000

Header Format: Type 1

Supported Log Type Descriptors: 1

Descriptor 1: OEM-specific

Data Format 1: POST results bitmap

Handle 0x1302, DMI type 19, 31 bytes.

Memory Array Mapped Address

Starting Address: 0x00000000000

Ending Address: 0x000000003ff

Range Size: 1 kB

Physical Array Handle: 0x1301

Partition Width: 1

Handle 0x1303, DMI type 20, 19 bytes.

Memory Device Mapped Address

Starting Address: 0x00000000000

Ending Address: 0x000000003ff

Range Size: 1 kB

Physical Device Handle: 0x1300

Memory Array Mapped Address Handle: 0x1302

Partition Row Position: 1

Interleave Position: Unknown (0)

Interleaved Data Depth: 1

Handle 0x1500, DMI type 21, 7 bytes

Built-in Pointing Device

Type: Touch Pad

Interface: PS/2

Buttons: 2

Handle 0x1600, DMI type 22, 26 bytes

Portable Battery

Location: Primary

Manufacturer: LGC-LGC3.8

Name: VMware Virtual Battery

Design Capacity: 1 mWh

Design Voltage: 300 mV

SBDS Version: 1

Maximum Error: 1%

OEM-specific Information: 0x00000000

“`

从上面的信息中可以看出,该机器是由VMware公司制造的虚拟机,并且还可以从UUID信息中获取到机器的唯一标识符。之后也可以用这个UUID信息去查询VMware的数据库,进一步确认该机器是否为虚拟机。

2.查看CPU信息

Linux系统中,/proc/cpuinfo文件中存储了有关CPU的信息。其中,有一项Flags表示CPU的一些特殊功能。如果其中包含了vmx、svm等虚拟化标识符,则说明该CPU支持虚拟化。

在命令行中输入命令:

“`

cat /proc/cpuinfo

“`

可以看到一些CPU信息,例如:

“`

processor : 0

vendor_id : GenuineIntel

cpu family : 6

model : 79

model name : Intel(R) Xeon(R) CPU E5-2697 v4 @ 2.30GHz

stepping : 1

microcode : 0xb000038

cpu MHz : 2294.402

cache size : 56320 KB

physical id : 0

siblings : 36

core id : 0

cpu cores : 18

apicid : 0

initial apicid : 0

fpu : yes

fpu_exception : yes

cpuid level : 20

wp : yes

flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx x est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti sd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgase tsc_adjust bmi1 hle avx2 ep bmi2 erms invpcid rtm cqm rdt_a rdseed adx ap intel_pt xsaveopt cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm arat pln pts md_clear flush_l1d

bugs :

bogomips : 4588.80

clflush size : 64

cache_alignment : 64

address sizes : 46 bits physical, 48 bits virtual

power management:

“`

从上方信息中可以看到,该机器的CPU支持vmx,说明该机器支持虚拟化。

3.查看内核模块

可以通过查看Linux内核模块是否已经加载的方式来判断当前机器是否是虚拟机。具体方法是利用lod命令列出当前已经载入操作系统的模块信息,查看是否存在类似于vbox、vmwgfx等以虚拟化软件名字命名的模块。

在命令行中输入命令:

“`

lod

“`

可以看到一些内核模块信息,例如:

“`

Module Size Used by

dm_thin_pool 44277 6

dm_persistent_data 13206 1 dm_thin_pool

dm_bio_prison 13243 1 dm_thin_pool

taskstats 28507 0

ext4 702571 1

jbd2 120231 1 ext4

crc32c_generic 16379 0

mgag200 19932 0

i2c_algo_bit 13413 1 mgag200

drm_kms_helper 139490 1 mgag200

syscopyarea 12529 1 drm_kms_helper

sysfillrect 12701 1 drm_kms_helper

sysimgblt 12640 1 drm_kms_helper

drm 334625 3 mgag200,drm_kms_helper

ahci 29311 0

libahci 35881 1 ahci

vmw_vsock_vmci_transport 7633 0

“`

从上面的信息中可以看到,该机器安装了vmware的虚拟化软件,并且其内核模块也加载了。

通过以上的这些方法,管理员可以轻松地判断一台机器是否为Linux虚拟机。当然,在实际的工作中,还可以结合多种方式进行判断,以提高判断的准确度。

虚拟化技术的发展已经促进了企业的业务发展,在一些负载较高的场景下,虚拟化技术也成为了不可或缺的组成部分。在使用虚拟化技术的同时,管理员也必须要有足够的技术实力,去充分管理这些虚拟化的机器。

相关问题拓展阅读:

华硕思聪本x205 能否安装linux操作系统(如何判断一台电脑是否可以安装Linux)

下一个裂猛ubuntu的iso,用ultraiso刻录到u盘,用u盘启动,如果能够启动到桌面,有线无线显卡声卡都正常,硬盘能识别,就罩陪可以肆闷桥安装。

一般情况厅团下能安装windows的电脑都能芦唤安装扮哗橘linux。学习的话建议安装虚拟机如:vmware,在虚拟机下运行linux就可以了,不影响windows正常运行。

一般linux都会有专门文件,描述可以支持的芯片组类型什么的,可以查查,主流配置基本都兼容,太新的硬件缺罩可能不兼容。伏指闹但是更新也蛮快逗宽的。

如何判断linux 虚拟机的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于如何判断linux 虚拟机,Linux虚拟机判断方法分享——让你轻松搞定,华硕思聪本x205 能否安装linux操作系统(如何判断一台电脑是否可以安装Linux)的信息别忘了在本站进行查找喔。


数据运维技术 » Linux虚拟机判断方法分享——让你轻松搞定 (如何判断linux 虚拟机)