VirtualBox hypervisor on Synology

Home / VirtualBox hypervisor on Synology

Lately I discovered a package for Intel based DiskStations that installs a ‘headless’ VirtualBox with ‘phpVirtualBox’ as management console for DiskStations with a suitable 32/64-bit Intel processor. You probably need some extra GB of RAM memory to accommodate the virtual machine(s) and you’re good to go. (Check your DiskStations hardware here.)

You can find the package in the Italian Synology forum’s package center and make sure you enabled the Beta’s in your package center. You can download the 4.3.12 version directly here. The next thing to do is to install the package on your DiskStation via Package Center. It’s asking the following settings:

VirtualBoxSpk02
Enter your Admin password and set the checkboxes Enable advanced configuration and Enable startup of VM’s if you need these features and click Next.

VirtualBoxSpk03

Click Next.

 

VirtualBoxSpk04

Click Apply to start the installation of VirtualBox on your DiskStation.

The installation of this package installs a headless version of VirtualBox on your DiskStation and a web interface to be able to manage your virtual machines. This web interface can be reached at:

http://{Name or IP of your Diskstation}/phpvirtualbox

This website has an initial account of admin/admin use this to login and alter the password as soon as you are logged in. You also might want to secure this more if you are publishing a website from your DiskStation to the internet.

This post is not meant to explain how the management interface of VirtualBox works. The web interface works nearly exactly how the headed version of VirtualBox works. There are three things that needs attention in this specific situation: The remote desktop server port, the location of your virtual machines and the mouse and keyboard configuration.

Mouse and keyboard

You might run into problems that you are unable to use your keyboard or mouse in the virtual machine.

VirtualBoxSpk08

VirtualBox defines for each new virtual machine a PS/2 mouse and a PS/2 keyboard. You can change this in the settings of the virtual machine bij selecting the Input tab in General. Select an USB keyboard and an USB mouse and save the changes.

Location of the virtuals

By default VirtualBox stores the virtual machines in the home directory of the user that runs the VirtualBox software. In one of the first installation steps you had to enter the Admin password. This implies that the root account is running the software and that virtual machines are stored in the root’s home directory (/root/VirtualBox VMs). And that is a location you do NOT want to store large files from virtual machines. Sooner or later this will compromise the availability of your DiskStation, it fills the system partition!

VirtualBoxSpk07

The best thing to do is to create a new shared folder (i.e. VirtualMachines). This folder resides not in the systems partition. Open in the web interface the File menu and select Preferences… In General change the Default Machine Folder to the just created shared folder. (i.e. /volume1/VirtualMachines). Click OK to confirm the changes.

Remote desktop server port

Because the installation of VirtualBox is headless, you need a way to access the virtual machines remotely. Fortunately VirtualBox has a feature for this: VRPC. VRPC is downwards compatible with the Microsoft Remote Desktop client. VirtualBox also provides a broker that manages the access to the virtual machines. Therefor you need to give each virtual machine its own port in the Remote Display settings in the Display settings of the virtual machine.

VirtualBoxSpk05

By default VirtualBox assigns a range of  Server ports. (9000-9100) The downside of this is that it is not always certain what port will be assigned. This is inconvenient when you want to access the machine remotely without peeking into the web interface what port the virtual machine currently uses. By assigning a specific port for a specific machine, you will overcome this. You also have to enable the Server by setting the checkbox.

When you want to access a certain virtual machine you don’t target the machine you would like to work with, but the machine hosting the virtual machine with the Server port. (i.e. rpc://DiskStation:9000) The broker of VirtualBox makes sure you access the machine you want to.

VirtualBoxSpk06

The web interface shows the used port for each machine. You can click this to start the RPC session wit the given machine.

Don’t expect too much of the performance of the virtual machine. After all it’s a NAS running a hypervisor. It might become useful to have this feature.