리눅스 VM여부 확인, 하이퍼바이저 확인

Jmnote (토론 | 기여)님의 2014년 1월 10일 (금) 22:47 판 (→‎리눅스)
자신이 VM인지 아닌지 확인
Guest OS 여부 확인

1 리눅스

1.1 방법 1: dmidecode

dmidecode | head -5
dmidecode -s system-product-name
실행예시 (Xen VM)
[root@jmnote ~]# dmidecode | head -5
/dev/mem: mmap: Bad address
# dmidecode 2.10
[root@jmnote ~]# dmidecode | head -5
# dmidecode 2.11
# No SMBIOS nor DMI entry point found, sorry.
실행예시 (VMware VM)
[root@jmnote ~]# dmidecode | head -5
# dmidecode 2.11
SMBIOS 2.4 present.
364 structures occupying 14150 bytes.
Table at 0x000E0010.
[root@jmnote ~]# dmidecode -s system-product-name
VMware Virtual Platform
실행예시 (Dedi)
[root@jmnote ~]# dmidecode | head -5
# dmidecode 2.10
SMBIOS 2.6 present.
308 structures occupying 8320 bytes.
Table at 0x7F7FD000.
→ 단독서버의 경우
실행예시 (XenServer)
[root@jmnote ~]# dmidecode | head -5
# dmidecode 2.7
SMBIOS 2.7 present.
127 structures occupying 3808 bytes.
Table at 0xDF7FE000.
→ 하이퍼바이저의 경우

1.2 방법 2: ethtool

명령어
ethtool -i eth0
실행예시 (Xen VM)
[root@jmnote ~]# ethtool -i eth0
driver: netfront
version: 
firmware-version: 
bus-info: vif-0
[root@jmnote ~]# ethtool -i eth0
Cannot get driver information: Operation not supported
실행예시 (VMware VM)
[root@jmnote ~]# ethtool -i eth0
driver: e1000
version: 7.3.21-k4-3-NAPI
firmware-version: N/A
bus-info: 0000:02:01.0
실행예시 (KVM)
[root@jmnote ~]# ethtool -i eth0
driver: virtio_net
version: 
firmware-version: 
bus-info: virtio0

1.3 방법 3: uname

완전한 방법은 아닌 것 같다. 확인 불가한 경우가 있다. kernel release에 xen이라는 문구가 붙으면 VM. 그런데 문구가 붙지 않는 경우도 있다. (...)

명령어
uname -r
실행예시 (Xen VM)
[root@jmnote ~]# uname -r
2.6.18-274.3.1.el5xen
→ Xen기반 VM용으로 변형된 커널임.
실행예시 (기타)
[root@jmnote ~]# uname -r
2.6.30.10-105.2.23.fc11.x86_64
→ Xen위에 올라간 VM임에도 xen표시가 없음.

결론. xen 문구가 있으면 VM. 역은 성립하지 않음

1.4 방법 4: fdisk

Xen VM
[root@jmnote ~]# fdisk -l

Disk /dev/xvda: 31.4 GB, 31457280000 bytes
255 heads, 63 sectors/track, 3824 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

    Device Boot      Start         End      Blocks   Id  System
/dev/xvda1   *           1          13      104391   83  Linux
/dev/xvda2              14        3824    30611857+  8e  Linux LVM
KVM
[root@jmnote ~]# fdisk -l

Disk /dev/vda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/vda1   *           1          13      104391   83  Linux
/dev/vda2              14        5221    41833260   8e  Linux LVM
VMware VM
[root@jmnote ~]# fdisk -l

Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          38      305203+  83  Linux
/dev/sda2              39        2353    18595237+  83  Linux
/dev/sda3            2354        2610     2064352+  82  Linux swap / Solaris
→ VM이지만 sda로 나오므로 확인 어려움

1.5 방법 5: rpm

실행예시 (Xen VM)
[root@jmnote ~]# rpm -qa | grep xen
kernel-xen-2.6.18-92.1.10.el5
kernel-xen-2.6.18-274.3.1.el5
kernel-xen-devel-2.6.18-274.3.1.el5
kernel-xen-devel-2.6.18-92.el5
kernel-xen-devel-2.6.18-92.1.10.el5
kernel-xen-devel-2.6.18-194.3.1.el5
kernel-xen-2.6.18-92.el5
kernel-xen-2.6.18-194.3.1.el5

2 윈도우

명령어
ipconfig/all | findstr Description
실행예시 (VM)
C:\Documents and Settings\jmnote>ipconfig/all | findstr Description
   Description . . . . . . . . . . . : Citrix PV Ethernet Adapter #2
   Description . . . . . . . . . . . : Citrix PV Ethernet Adapter
실행예시 (Dedi)
C:\Documents and Settings\jmnote>ipconfig/all | findstr Description
   Description . . . . . . . . . . . : Intel(R) Ethernet Server Adapter X520-2 #2
   Description . . . . . . . . . . . : Intel(R) Ethernet Server Adapter X520-2
   Description . . . . . . . . . . . : HP NC382i DP Multifunction Gigabit Server Adapter #3

3 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}