VirtualBox

Revision as of 14:20, 14 April 2020 by imported>Fhdk (→‎Selecting a Display Controller: the choices and problems using Manjaro)


Overview


Developed by Sun Microsystems, now Oracle Corporation, VirtualBox is a popular application that allows for other operating systems (known as Guests) to be installed and run within an existing operating system (known as the Host). This is undertaken through the process of virtualisation, whereby virtual versions of your computer (also referred to as virtual machines or VMs) are created within and draw resources directly from the host system. As such, how fast or powerful a virtual machine may be will depend entirely on the resources available - and allocated - for it to use. The benefits of virtualisation include:

  • The fast and easy installation of other operating systems without affecting your existing system (e.g. no need for dual booting and/or preparation in the form of hard disk partitioning or re-sizing)
  • Completely safe learning and experimentation with operating systems, as nothing that occurs within a Guest will affect the Host (e.g. the Host operating system can also be installed as a Guest in a virtual machine as a risk-free means of trying out new things), and
  • An almost unlimited capacity to install as many additional operating systems as desired...provided space is available on your hard drive to store them!


Installing Virtualbox on Manjaro

Enabling Virtualisation

Before installing VirtualBox, it is important to first ensure that virtualization has been enabled in your BIOS. The exact instructions for doing this vary based on your hardware. Please review the manual provided by your computer or motherboard manufacturer for specific instructions.


Install VirtualBox

To install VirtualBox, you need to install the packages virtualbox and linux*-virtualbox-host-modules. The latter must match the version of the kernel you are running. To list what kernels is installed use mhwd

~ >>> mhwd-kernel -li                                                           
Currently running: 5.4.0-1-MANJARO (linux54)
The following kernels are installed in your system:
   * linux54


To install VirtualBox and automatically install the kernel modules for your installed kernels enter the following command in the terminal:

sudo pacman -Syu virtualbox linux54-virtualbox-host-modules


Once the installation has completed, it will then be necessary to add the VirtualBox Module to your kernel. The easy way is to simply reboot your system. Otherwise, to start using VirtualBox immediately, enter the following command:

sudo vboxreload

Install the Extension Pack(Optional)

The virtualbox extension pack is available from Arch User Repositoty(AUR). You can install it with:

pamac build virtualbox-ext-oracle


Adding Your Account to the vboxusers User Group

The final step is to now add your personal user account to the vboxusers group. This is necessary in order to fully access the features provided by VirtualBox, including the ability to use USB devices in a Guest operating system.


The command to add your user-name to the vboxusers group is:

sudo gpasswd -a $USER vboxusers


You must logout for the change to take effect.

Running Manjaro under VirtualBox

For those intending to use Manjaro under VirtualBox, you can install Manjaro as usual. Please observe below point of setting the correct display type.

Selecting a Display Controller

Before installation of Manjaro ensure the correct display settings for VM.

The Manjaro recommendation - to ensure the best experience - is contradicting the recommendations from VirtualBox developers.

To have the VM screensize adapting to the window size - you need enable VBoxSVGA but doing so you cannot enable 3D.

To use 3D you need to use VMSVGA which will force you to set the VM screen size inside the VM.

If you use the VMSVGA adapter - mhwd will keep telling you to switch - you can do it but you will not be able to utilize 3D graphics.

Trouble shooting

If you deem it necessary to ensure the packages are installed please follow this recipe

~ >>> mhwd-kernel -li                                                           
Currently running: 5.4.0-1-MANJARO (linux54)
The following kernels are installed in your system:
   * linux54
~ >>> sudo pacman -Syu virtualbox-guest-utils linux54-virtualbox-guest-modules

Guest Configuration

You will need to load the modules if you don't want to reboot:

sudo modprobe vboxguest vboxvideo vboxsf

The guest utils than need to be started and enabled:

sudo systemctl enable --now vboxservice.service

Add you VM user to the vboxsf group (this requires you to logout to apply the new group)

sudo gpasswd -a $USER vboxsf

Advice, Tips, and Tricks

Advice on using Virtualbox effectively, as well as some tips and tricks learned along the way, have been provided for the benefit of new users.


Guest Installation

  • Virtualbox can run installation files (ISOs) directly as virtual discs, so there is no need to burn them to an installation medium such as a disc or USB data stick.
  • The process to install any Guest operating system, including Manjaro, is exactly the same as if actually installing for real on your computer.


Guest Additions

Guest Additions are special software packages designed to improve the performance and usability of guest operating systems.


They are installed within the Guest operating system itself, and most notably result in enhancing the display resolution, as well as enabling much better control over the mouse. As such, two tell-tale signs that Guest Additions have not been installed in a Guest are that the display will not scale to the size of the display window (i.e. it will be necessary to scroll around to see the whole screen), and the mouse may be quite hard to control.


Instructions for installing the guest additions in Manjaro are provided above. For other operating systems please review the VirtualBox instructions linked below


Guest Display

If you are using other guests e.g. Ubuntu, Linux Mint and others be sure to use the default VMSVGA display driver.

It will be necessary to activate the Enable 3D acceleration box in order to allow for some desktop effects (such as transparency) to be shown. This can be undertaken by going into the settings menu, and then selecting the Display section.

If you are getting screen distortion or transparent dialogs using Windows guest - shutdown the VM and change the graphics settings of the VM. Remove the checkbox for Enable 3D acceleration.

Guest Internet Connection

Some users have encountered problems when attempting to connect their virtual machine to the internet using the default VirtualBox settings. Where this is the case, try the following solution

1. Click the Settings Button and then select the Network tab

2. Next to the Attached to heading is a button that states NAT. Click it to reveal a drop down menu and select Bridged Adapter instead.

3. Next to the Name heading is a button whereby you may select how you are currently connected to the internet (e.g. Wlan means Wireless, and Eth0 means Ethernet). Select the appropriate connection type you are currently using.

4. Click the OK button to confirm.


General Troubleshooting

  • A VirtualBox installation will not automatically detect when USB device has been connected. As such, it is therefore necessary to click the USB icon located at the bottom of the VirtualBox window in order to select and activate it.
  • It is possible to enable the (very useful) ability to copy and paste text between the Guest and Host systems. This is undertaken by clicking Settings button and then going to the General Section.
  • Don't be afraid to take risks, to experiment, and to have fun with Guest operating systems. The worst that can happen is that they will have to be re-installed!

See Also