VMWare GuestOS id list
Wednesday, April 30th, 2008Today, I needed to come up with a definitive list of all VMWare GuestOS id’s for some software that will generate configuration files for various versions of VMWare ESX.
I haven’t seen these listed in detail anywhere before. Google is silent, as is the VMWare site. Sure, you can get the list of supported operating systems from VMWare’s official documentation, but not the actual list of guestOS = strings to use.
So here they are, hopefully this will be of use to someone else.
First, the lists, then how I divined them.
VMWare ESX 2.5
MS-DOS (strings found nearby suggest it is unsupported)
win31
win95
win98
winMe
winNT
win2000Pro
win2000Serv
win2000AdvServ
winXPHome
winXPPro
winNetWeb (ie: Windows .NET Server 2003, Web Edition)
winNetStandard
winNetEnterprise
linux
freebsd
netware4
netware5
netware6
OS/2 (probably unsupported)
solaris (probably unsupported)
other
VMWare ESX 3
win31
win95
win98
winMe
winNT
win2000Pro
win2000
win2000Serv
win2000AdvServ
winXPHome
whistler
winXPPro
winXPPro-64
winNetWeb
winNetStandard
winNetEnterprise
winNetBusiness
winNetStandard-64
winNetEnterprise-64
longhorn
longhorn-64
winVista
winVista-64
freebsd
freebsd-64
redhat
rhel2
rhel3
rhel3-64
rhel4
rhel4-64
rhel5
rhel5-64
suse
suse-64
sles
sles-64
nld9
sjds
mandrake
mandrake-64
turbolinux
ubuntu
ubuntu-64
other24xlinux
other26xlinux
otherlinux
other24xlinux-64
other26xlinux-64
otherlinux-64
solaris6
solaris7
solaris8
solaris9
solaris10
solaris10-64
netware4
netware5
netware6
darwin
other-64
VMWare ESX 3.5
win31
win95
win98
winMe
winNT
win2000Pro
win2000
win2000Serv
win2000AdvServ
winXPHome
whistler
winXPPro
winXPPro-64
winNetWeb
winNetStandard
winNetEnterprise
winNetDatacenter
winNetBusiness
winNetStandard-64
winNetEnterprise-64
winNetDatacenter-64
longhorn
longhorn-64
winVista
winVista-64
freebsd
freebsd-64
redhat
rhel2
rhel3
rhel3-64
rhel4
rhel4-64
rhel5
rhel5-64
suse
suse-64
sles
sles-64
sles10
sles10-64
nld9
sjds
mandrake
mandrake-64
mandriva
mandriva-64
turbolinux
ubuntu
ubuntu-64
other24xlinux
other26xlinux
otherlinux
other24xlinux-64
other26xlinux-64
otherlinux-64
solaris6
solaris7
solaris8
solaris9
solaris10
solaris10-64
netware4
netware5
netware6
darwin
other-64
vmkernel
openserver5
openserver6
unixware7
VMWare Fusion 1.1.2
win31
win95
win98
winMe
winNT
win2000Pro
win2000Serv
win2000AdvServ
winXPHome
winXPPro
winXPPro-64
winNetWeb
winNetStandard
winNetEnterprise
winNetBusiness
winNetStandard-64
winNetEnterprise-64
longhorn
longhorn-64
winvista
winvista-64
freebsd
freebsd-64
redhat
rhel2
rhel3
rhel3-64
rhel4
rhel4-64
rhel5
rhel5-64
suse
suse-64
sles
sles-64
nld9
sjds
mandrake
mandrake-64
mandriva
mandriva-64
turbolinux
ubuntu
ubuntu-64
other24xlinux
other26xlinux
otherlinux
other24xlinux-64
other26xlinux-64
otherlinux-64
solaris6
solaris7
solaris8
solaris9
solaris10
solaris10-64
netware4
netware5
netware6
darwin
other-64
The Process
Something has to read the .cfg or .vmx configuration files. An examination of “ps aux” was in order.
[root@pod42 root]# ps auxwwww | grep vmx | head -1 root 3117 0.0 0.0 1748 148 ? S< 2007 5:36 /usr/lib/vmware/bin/vmkload_app /usr/lib/vmware/bin/vmware-vmx -ssched.group=host/user -@ pipe=/tmp/vmhsdaemon- 0/vmx8eee7804afcedec4;vm=8eee7804afcedec4 /vmfs/volumes/46ae1d59-f8a70ce6-b9f9- 001b78b81088/firewallvm/firewall.cfg
Likely suspect is vmware-vmx
[root@pod42 root]# strings /usr/lib/vmware/bin/vmware-vmx | grep -ni solaris10 10281:solaris10 10282:solaris10-64
yep!
Let’s pull all the strings out and jump to line 10281 and see what we find :
[root@pod42 root]# strings /usr/lib/vmware/bin/vmware-vmx >/tmp/tt ; vi +10281 /tmp/tt
We’re in the middle of the list of guest os’s, no doubt here. Copy/Paste then remove the /tmp/tt scratch file.
Repeat for other flavours of VmWare.
In the case of Fusion (on OS X), the executable to run strings against is found way down in
/Library/Application Support/VMware Fusion/vmx/Contents/MacOS/vmware-vmx
So simple and yet nobody, that I can find easily anyways, has posted these lists before. Hope it helps ya!


