no edit summary
A key area where VMware Server differs from many other virtualization solutions is the ability to install tools (known as VMware Tools) onto the guest operating system. VMware Tools are available for Windows, Linux, FreeBSD and Netware guest operating systems and are designed to both improve the functionality of the guest within the virtual machine environment, and to enhance interaction between the guest and the host.
== An Overview of VMware Tools ==
The VMware Tools package comprises four categories of utilities, each of which
performs one or more specific purposes:
=== VMware Device Drivers ===
One of the most important, yet least visible, functions of the VMware Tools Service is to send regular ''heartbeat'' messages to VMware Server so that it can detect (via the lack of heartbeats) when a particular virtual machine, or its respective guest operating system, has failed.
Another responsibility of VMware Tools Service involves the handling of communication between the guest and host operating systems. It is not too unrealistic to make the statement that none of today's popular operating systems have been written specifically to run within a VMware Server virtual machine. As such, none of these guest operating systems are designed to accept and respond to any form of communication from the VMware Server environment. Whilst this isn't generally problem, an issue arises when we consider that the VI Web Access management interface provides the ability to power off, restart and suspend guest operating systems at the press of a tool bar button or menu option, avoiding the need to open a VMware Remote Console session, log into the guest operating system and perform an orderly shutdown or reboot. Since there is no mechanism built into most operating systems that would allow VMware Server to request a clean shutdown or restart, this functionality is instead provided by the VMware Tools Service. When a user, for example, restarts a virtual machine from the VI Web Access management interface, VMware Server notifies the VMware Tools Service running on the guest operating system, which in turn executes the commands necessary to perform a clean and orderly shutdown or restart. In addition, VMware Tools Service also provides a mechanism for administrators to configure custom scripts to be executed within the guest operating system when the power state of the underlying virtual machine changes. This particular topic
will be covered in greater detail later in this chapter.
In another example of communication, VMware Tools Service is also responsible for ensuring that the system time of the host and guest operating systems are synchronized.
Some cosmetic and Windows specific features of VMware Tools Services include the automatic grabbing and releasing of the mouse pointer when it moves in and out of the VMware Remote Console window, and the matching of guest and host screen resolutions. On Linux and Solaris systems, these functions are performed by the VMware User Process.
=== VMware User Process ===
As with the VMware Tools Service, the VMware User Process (''VMwareUser.exe'' on Windows and ''vmware-user'' on Linux, FreeBSD and Solaris) runs as a background process and is essentially invisible to the user of the guest operating system. On guest operating systems which use the X11 session manager
(i.e non-Windows systems), the VMware User Process is started automatically and an X Window session is started. On X Window based systems which do not use a session manager, the VMware User Process may be manually invoked by running the following command:
or by adding the command to the user's ''.xinitrc'' X initialization file.
On Linux, FreeBSD and Windows
and UNIX based guests, the VMware User Process provides the ability to cut and paste text between the VMware Remote Console and the host operating system desktop environment.
The VMware User Process also provides the mouse pointer and screen resolution functionality provided by the VMware Tools Service on Windows.
=== VMware Tools Control Panel ===
The VMware Tools Control panel, which will be covered in more detail later in
this chapter, provides a user friendly central location within the guest operating system for changing settings relating to VMware Tools and performing tasks such as shrinking the size of virtual disks attached to the guest's virtual machine.
== Installing VMware Tools on a Windows Guest ==
== Installing VMware Tools on a Linux Guest ==
VMware Tools installation on Linux uses a similar mechanism to
that that described in the Windows section above. Once again, an ISO CD image containing the Linux VMware Tools installation files is mounted as the CD/DVD device of the virtual machine running target guest operating system. The installation can be performed either using a graphical RPM package management tool or from the command line, both of which will be covered in the section. In both cases, the installation is initiated by logging into the VI Web Access management interface, selecting the target virtual machine from the ''Inventory'' panel and clicking on ''Install VMware Tools'' in the ''Status'' panel of the ''Summary'' workspace.
VMware Tools on Linux involves loading special modules (''vmmemctl'', ''vmhgfs'', ''vmxnet'', ''vmblock'', ''vmsync'', ''vmci'' and ''vsock'') into the operating system kernel. For supported guest operating systems (see [[Officially Supported VMware Server 2.0 Guest Operating Systems]] for a list) pre-built modules are included with the VMware Tools installations software. If the guest operating system is not officially supported and a suitable pre-built module cannot be found, the VMware Tools configuration script will attempt to custom build a compatible module, for which it will need the GNU C compiler and the appropriate kernel sources. The steps necessary to install these packages differ between Linux distributions.
On most recent Linux distributions, the CD image will auto-mount as soon it is attached to the virtual machines CD/DVD device. If the image does not automount it will need to be mounted as superuser using a command similar to the following:
where ''<device>'' is the device by which the CD/DVD drive is accessed (for example /dev/hdb1) and ''<mountpoint>'' is a suitable directory where the image may be mounted (for example /tmp/vmware).
On most Linux desktops (such as GNOME and KDE) an icon will appear on the desktop when the CD image has been mounted. In addition some Linux desktops will also display a window containing the contents of the CD image. The following figure, for example, illustrates the GNOME Nautilus file manager displaying the contents of the VMware Tools installation image:
VMware Tools can be installed either using the Red Hat Package Manager (RPM) archive or via the compressed tar archive (tar.gz) file. To install using RPM
doublke click on the .rpm file in the file manager and use the graphical RPM installation tool as shown in the following figure:
As an alternative to using the graphical RPM installer,
change directory to the CD image and run the following command in a terminal window as superuser:
Once VMware Tools has been installed on the Linux system, it must be configured prior to use. This is achieved using the ''vmware-config-tools.pl'' configuration script which is installed in ''/usr/bin''. If the installation was performed using the ''vmware-install.pl'' script, ''vmware-config-tools.pl'' will start automatically after the installation is completed.
Fro RPM based installations the confighuration script will need to be invoked manually:
As indicated above, on systems with a session manager, the vmware-user process will automatically start the next time a user logs into the guest operating system desktop. For systems with no session manager, this process will need to manually invoked by executing the following command: