How do you check Linux machine is Physical or Virtual remotely?

There is no hard and fast rule to check whether the machine is physical or virtual but still we do have some commands which can be used for the some purpose.

NOTE: There might be other commands as well but these are the few of my knowledge.

The command used to view all the required hardware related information for any Linux machine is

# dmidecode

But the output would be very long and hard to find out the specific details looking for. So, lets narrow it down

 

Physical Servers

# dmidecode -s system-product-name
System x3550 M2 -[7284AC1]-

As you can see in one of my servers I see the above information which says the machine I am using is IBM System X

Now to get more details about the system

# dmidecode | less (And search for "System Information")
System Information
        Manufacturer: IBM
        Product Name: System x3550 M2 -[7284AC1]-
        Version: 00
        Wake-up Type: Other
        SKU Number: XxXxXxX
        Family: System x

Some more examples for different product

# dmidecode  -s system-product-name 
ProLiant BL460c G6
# dmidecode | less
System Information
Manufacturer: HP
        Product Name: ProLiant BL460c G6
        Version: Not Specified
        Wake-up Type: Power Switch
        Family: ProLiant

For a IBM blade chasis

# dmidecode -s system-product-name
BladeCenter HS22 -[5940PRX]-
# dmidecode | less
System Information
Manufacturer: IBM
        Product Name: BladeCenter HS22 -[5940PRX]-
        Version: 06
        Wake-up Type: Other
        SKU Number: XxXxXxX
        Family: System x

 

Virtual Servers

# dmidecode -s system-product-name
VMware Virtual Platform
# dmidecode | less
System Information
Manufacturer: VMware, Inc.
        Product Name: VMware Virtual Platform
        Version: None
        Wake-up Type: Power Switch
        SKU Number: Not Specified
        Family: Not Specified

 

On a virtual server running VMware you can run the below command to verify

# lspci | grep -i vmware
00:0f.0 VGA compatible controller: VMware SVGA II Adapter

I would appreciate if you can enlighten me with any more commands which you know in the comment section.

4 thoughts on “How do you check Linux machine is Physical or Virtual remotely?”

  1. I have tried virt-what to know if the OS is Virtual. This command gives the output of the virtualization software like vmware or KVM. Regards, K

    Reply

Leave a Comment