1.16. Alternative front-ends

Oracle VM VirtualBox

1.16. Alternative front-ends

As briefly mentioned in Section 1.3, “Features overview”, VirtualBox has a very flexible internal design that allows for using multiple interfaces to control the same virtual machines. To illustrate, you can, for example, start a virtual machine with the VirtualBox Manager window and then stop it from the command line. With VirtualBox's support for the Remote Desktop Protocol (RDP), you can even run virtual machines remotely on a headless server and have all the graphical output redirected over the network.

In detail, the following front-ends are shipped in the standard VirtualBox package:

  1. VirtualBox is the VirtualBox Manager. This graphical user interface uses the Qt toolkit; most of this User Manual is dedicated to describing it. While this is the easiest to use, some of the more advanced VirtualBox features are kept away from it to keep it simple.

  2. VBoxManage is our command-line interface for automated and very detailed control of every aspect of VirtualBox. It is described in Chapter 8, VBoxManage.

  3. VBoxSDL is an alternative, simple graphical front-end with an intentionally limited feature set, designed to only display virtual machines that are controlled in detail with VBoxManage. This is interesting for business environments where displaying all the bells and whistles of the full GUI is not feasible. VBoxSDL is described in Section 9.1, “VBoxSDL, the simplified VM displayer”.

  4. Finally, VBoxHeadless is yet another front-end that produces no visible output on the host at all, but can act as a RDP server if the VirtualBox Remote Desktop Extension (VRDE) is installed and enabled for the VM. As opposed to the other graphical interfaces, the headless front-end requires no graphics support. This is useful, for example, if you want to host your virtual machines on a headless Linux server that has no X Window system installed. For details, see Section 7.1.2, “VBoxHeadless, the remote desktop server”.

If the above front-ends still do not satisfy your particular needs, it is possible to create yet another front-end to the complex virtualization engine that is the core of VirtualBox, as the VirtualBox core neatly exposes all of its features in a clean API; please refer to Chapter 11, VirtualBox programming interfaces.