So, one of my goals as of lately is to build my own (albeit ghetto) Client Side Hypervisor. That is, what I'm really looking for is to be able to have a distribution of Linux that is really small as to not use a whole lot of computer resources which will allow for my Virtual Machines to have a lot of resources to consume.
What I know about VirtualBox (when it's running properly) that it has great support for USB Filtering, it's easy to establish a network connection, and it supports a lot of formats. It also exposes ACPI battery information to a guest OS (with the Guest Additions installed in the Guest) which makes it ideal for laptops.
With that said, I downloaded the .run file from the virtualbox.org website. Out of the box, it's first issue is missing GNU Make and Kernel Headers. I was able to get the necessary packages. During the execution of the .run file, it creates the kernel module and netfit kernel module. It mentions errors about ln, but that's just links, right? Of course, it also mentions that it cannot reconize the linux distribution and that it's tossing vboxdrv information into /etc/init.d/
Here's where the fun starts,
When I go over to /etc/init.d/vboxdrv and send the start argument, the first error is "(Cannot change owner vboxusers for device /dev/vboxdrv/). So, I ran the commands and made the vboxusers group. I then ran the command again and apparently it starts, by saying '...done'. If I use the status argument from vboxdrv, it says the modules are loaded. However, when I started vboxdrv (both with the fail error and with the success) it mentions "Starting Virtualbox kernel modulesleep: invalid number '.2'", but as mentioned, both kernel modules claim to start, so I don't know what this really means.
Now, according to VirtualBox.org User Manual:
You will need to install the following packages on your Linux system before starting the installation (some systems will do this for you automatically when you install VirtualBox):
* Qt 4.3.0 or higher;
* SDL 1.2.7 or higher (this graphics library is typically called libsdl or similar).
Note
To be precise, these packages are only required if you want to run the VirtualBox graphical user interfaces. In particular, VirtualBox, our main graphical user interface, requires both Qt and SDL; VBoxSDL, our simplified GUI, requires only SDL. By contrast, if you only want to run the headless VRDP server that comes with VirtualBox, neither Qt nor SDL are required.
So I looked through the package manger and found what it was asking for, then I installed it. I also installed Xlib because, somewhere in this mess, it was mentioned. So I installed it.
Now, when I run VirtualBox (which is the GUI as it states above) Xlib gives the error: 'extension "Generic Event Extension" missing on display ":0.0". I also get a pop up window (which is the first sign of some sort of external GUI actually trying to work) saying "Failed to create the VirtualBox COM object. The application will now terminate." If I click on the Details arrow, I get: "Callee RC NS_ERROR_ABORT (0x800004004), and that's that.
Now, it's possible I can get this working over VBoxHeadless (which starts the Virtual Machine as a process which can be accessed through VirtualBox's special implementation of Remote Desktop Connection they call VRDP (V I would assume means Virtual). However, I haven't tried this so I'll have to confirm at a later time.
In any case, that's where I'm at as far as getting the actually GUI and Hypervisor to start. Ideally, I'd like to write some sort of simple interface for booting into a menu for someone to start a Virtual Machine (or if there's only 1 machine, have it boot full screen). Essentially, I'd like to make this slim on the OS side but user friendly would be nice. I'd like to give something like this to technical amatures so that I can assist them into the benefits of Virtualization without the huge learning curve.
The major issue (as I can tell) is the pop up error mentioned above, but then again, I don't know. Any help, input, ideas?! Definitely appreciated.
In any case, great project. I love how slim and easy to use Tiny Core is, but until I can tailor it to my desires, it's obviously not a perfect fit for me. Looking forward to whatever help I can get!
Thanks!