Apakah ada cara untuk mengetahui apakah mesin Windows yang saya kerjakan itu virtual atau fisik? (Saya terhubung dengan RDP ke mesin. Jika mesin virtual itu berfungsi dan ditangani oleh VMWare).
windows
virtualization
virtual-machines
Duncan Jones
sumber
sumber
Jawaban:
Jika itu Windows, lihat saja layar perangkat kerasnya. Ini akan memiliki satu miliar dan lima perangkat virtual bermerek VMWare.
sumber
Pada jenis jendela CMD:
Anda akan menemukan baris dengan teks berikut (atau yang serupa):
sumber
Jika ditangani oleh VMware, itu tidak terlalu sulit pada saat ini. Ini bisa berubah di masa depan.
sumber
dmidecode
adalah perintah linux yang digunakan untuk mendapatkan informasi tentang perangkat keras. Itu tidak bekerja di Windows.linux
OS ini adalah opsi terbaik untuk mendeteksi perangkat keras vs mesin virtual ..Di Linux Anda juga bisa menggunakan "virt-what". " virt-what - mendeteksi jika kita menjalankan dalam mesin virtual ".
sumber
Di Windows, dari CMD:
mengembalikan sesuatu seperti:
sumber
Di Linux, jalankan ini:
sumber
dmesg |grep DMI
Mesin Virtual: [root @ myhost ~] # dmesg | grep DMI <br> DMI 2.3 hadir. DMI: Mesin Virtual Microsoft Corporation / Mesin Virtual, BIOS 090006 05/23/2012 [root @ myhost ~] # dmesg | grep -i virtual DMI: Mesin Virtual Microsoft Corporation / Mesin Virtual, BIOS 090006 05/23/2012 Booting kernel paravirtualized pada input perangkat keras: emulasi tombol mouse Macintosh sebagai / perangkat / virtual / input / input1 scsi 0: 0: 0: 0: Direct-Access Msft Virtual Disk 1.0 PQ: 0 ANSI: 4 input: Microsoft Vmbus HID-compliant Mouse sebagai / devices / virtual / input / input4 Fisik: [root @ backdev1dmidecode
dikembalikanpermission denied !
.Jika Anda berada di Windows, seperti kata castrocra , Anda dapat menjalankan
systeminfo
perintah dari dalam shell cmd , kemudian mencari "Versi BIOS".Ini mungkin mesin nyata :
Di sisi lain, ini hampir pasti mesin virtual :
sumber
Phoenix Technologies LTD 6.00, 9/17/2015
Sudah dijawab, tetapi FWIW Anda dapat melakukan ini di PowerShell:
"Pabrikan" akan menjadi "Microsoft Corporation" dan "Model" akan menjadi "Mesin Virtual" jika itu adalah mesin virtual, atau harus menampilkan detail pabrikan biasa jika tidak, misalnya "Dell Inc." dan "PowerEdge R210 II" masing-masing.
sumber
wmic computersystem get manufacturer | find "VMware" && echo In VMWare || echo Not in VMWare
. Ini lebih cepat daripadasysteminfo
solusi berbasis.Anda dapat mencoba program "Deteksi Host" .
sumber
Jika itu adalah Unix VM, gunakan imvirt . Ini adalah skrip Perl yang mendeteksi VMWare, Xen, dan beberapa lainnya.
sumber
Satu (relatif) cara sederhana untuk mendeteksi informasi virtualisasi kunci adalah melalui WMI / WBEM. Anda dapat menggunakan namespace root \ CIM2 dan mengakses kelas Baseboard (penuh dengan informasi BIOS yang menarik) untuk mendapatkan deskripsi sistem "fisik". Kelas ini sering mencakup informasi tentang pembuatan motherboard dan sasis, model, nomor seri, lainnya.
Jalankan perintah berikut dari prompt perintah atau sesi PowerShell:
sumber
Bahkan lebih sederhana - wmic / node: bios mendapatkan nomor seri
Apa pun yang mengembalikan nomor seri gaya Dell adalah fisik.
Ini juga akan mengembalikan "VMware-42 22 26 a8 dd 6e e3 b3-2e 03 fc 2c 92 ae 2e 89", jika itu mesin virtual.
sumber
Saya memiliki pertanyaan yang sama dan menemukan bahwa ada banyak proses yang berjalan dengan "VM" dalam nama, misalnya VMWareTray.exe
sumber
nbtstat -a Hasilnya akan memberi tahu Anda karena VM memiliki awalan spesifik yaitu 00-50-56-XX-XX-XX. Ada juga awalan lain yang digunakannya tetapi saya tidak ingat di bagian atas kepala saya, tetapi saya ingat Vcenter menggunakan 00-50-56-XX-XX-XX jadi ini adalah satu-satunya yang saya periksa saja.
Saya pikir ini adalah cara terbaik, secara pribadi.
sumber