Thursday, May 5, 2011

Virtual Box OS Distribution

Using virtual Box from Oracle or any other Virtualization Software we can run one operating system inside another Operating System. For example, my computer runs on Debian Stable and I have Virtual Box in it. So I log into Debian and run the virtual Box program and install in it other operating systems, in virtual Disk Drives created by virtual box.

This is fine, but to have more fun somebody should configure a linux, or opensolaris, or bsd distribution that opens directly into a Virtual Box Graphical User Interface. Just like the ChromeOS opens directly into the Chrome Browser, in a similar manner the Virtual Box Distribution should have Virtual Box running on top of the linux (or BSD or solaris) kernel.

The virtual Box Graphical User Interface should be very similar to the Virtual Box Interface we now have, but with a few additions. It should include a drop down list of Operating Systems ready to be installed into Virtual Box. If we get the Virtual Box Distribution in a CD iso format, then it should include the Virtual Box distribution and at least one Operating System image (VDI) pre-install and ready to run, so that the end user can just click on it and have a functional Operating System ready for everyday use.

But beyond that, there should be the drop down list of Operating Systems ready to be installed. You just click on it and the system will download the VDI of the chosen operating system and have it ready to run as soon as it downloads. Won't that be great?!!!

Of course you could also take your regular install CD and or downloaded CD image and do a regular Virtual Box install as we now normally do. The great thing with this distribution is that you can have as many operating systems distributions installed into your system, each one taking the minimum amount of space needed, while you are able of removing them with the click of an icon.

Of course, this virtual Box distro should be polished and refined and include all the drivers needed to make sure it detects all the hardware in the computer and configure it correctly to run with all the Operating Systems Distributions available.

For normal operations the Virtual Box Graphical User Interface should be not intrusive. It can be reduce to a top or bottom panel. Just click on an icon to get the list of the Operating Systems Installed in your system and then click on the one you want to run. If you want to run several of them at the same time, provided of course that you have enough memory to do it, you just click on all the Operating Systems you want to run, and each one will open into a different workspace or window, and will be identified with a corresponding tab in the top of bottom virtual box panel.

If you want to install another operating system you just click on the available operating systems icon and the list of available operating systems will drop down. You should be able to choose between a full VDI, ready to be run, and a iso image for you to install following a lengthier but more customizable process, as we normally do when installing operating systems under Virtual Box.

Think about it guys. Won't it be great to have a Virtual Box Distro where you can install and deinstall as many operating systems as you like, play and interact with them as you wish, and all that in a safe, secure and easy to use Virtual Box Distro Graphical User Interface...

20 comments:

  1. Sounds like what you want is Fedora and KVM.

    ReplyDelete
  2. It may be built on top of Fedora, Debian, Gentoo, Slackware, BSD or Solaris. It may use KVM, VMWARE of VirtualBox. The big idea is that it will be a Virtualization Graphical User Interface built on top of a bare Operating System. No Open/Libre Office, no Gimp, no complex Desktop Environment, just the Virtualization Graphical User interface.

    When you boot up, instead of opening into Gnome, KDE, Xface or LXDE, etc. etc. the first and only thing you will see will be the Virtualization Graphical User Interface, in my article I used VirtualBox, because that is the one I have installed in my system. That's the one I use all the time to check out new distributions, especially chromeos, using the hexxeeh builts...

    ReplyDelete
  3. Debian server + Virtualbox + phpvirtualbox or vboxweb ... done. That or just go with Proxmox or kvm.

    ReplyDelete
  4. What is the value of this? I see that it would be nice for starting several virtualized operating systems, but the overhead of virtualization seems like it would just introduce more strain on the hardware. Why run everything through a virtual machine when you can just run some things through a virtual machine?

    ReplyDelete
  5. VMware is better than virtual box, and i did read you reply to that one guy, I had an exact idea of yours, except that it would come on a tablet or um a smaller square... and there would be cute little mobile stuff, if any one uses this idea, than you owe me!!!!! JK :D
    okay maybe a dollar :P

    ReplyDelete
  6. oh and you are in my google reader feed...

    ReplyDelete
  7. A GUI that allows to run your virtualized systems on top of your computer but also on top of your preferred cloud provider.

    ReplyDelete
  8. This thing exists and is called "Oracle Virtual Desktop Infrastructure" (Oracle VDI) and it comes complete with web UI for administration:
    http://wikis.sun.com/display/VDI3dot2/Home

    It's not "opensource" in any way though. But it works as you describe, e.g. upon login I can choose which OS I want to work with. As virtualisation back-end you can use VMware, Microsoft Hyper-V and Oracle VirtualBox (you can even use all three at the same time).

    ReplyDelete
  9. Thanks Anonymous!

    Now all we need is an open source version or clone of the Oracle Virtual Desktop Infraestructure. Perhaps something simpler, to be distributed as any other Linux/BSD Distribution.

    The idea, as an end user, is to bring back the joy of using a computer, of playing with it; and expand it to the millions of us who like to dable with computers but are not system administrators or programmers...

    Something simple. Perhaps a simple distribution based on Debian or Ubuntu that will open directly on VirtualBos OSE, and then have a full version of debian as the first virtualized Operating System... and a drop down list of VDIs ready to be downloaded and run, for the fun of it....

    ReplyDelete
  10. I've had this similar idea for a while now, along with some additional neat "behind the scenes" features. I'm hoping I can work on it this year. I've bookmarked this page and will contact you if I make progress.

    ReplyDelete
  11. Sounds like a nice idea. They should also made a OS that has all the environments like GNOME, XFE, KDE, LXE and many more.

    ReplyDelete
  12. With Oracle VDI you define templates (= you make one VM that looks just how you want it; be that a completely pre-configured installation or one that is set to boot for the first time so you still have to configure it ...), then you place those templates into pools (e.g. you make a pool "Debian", a pool "SUSE", a pool "Windows 7", a pool "OpenSolaris" ...), and then you define what should happen to those VM's once they have been active and disconnected again: "Reuse desktop", "Reset to Snapshot", "Delete desktop". "reuse desktop" is obvious: you get to use the same desktop again. "Reset to snapshot" is obvious too: Whatever you changed in that cloned VM is lost, the VM is reverted back to the state it had before you logged in. "Delete desktop" goes even farther: The whole VM is deleted and a new clone is generated from the template ... which may make sense if in the meantime you made changes to the template.

    I know a few places (e.g. universities) where they use Oracle VDI so their Computer Science students can tinker around, mess with their own DIY operating sytems (Linus Torvalds isn't the only CS student writing his own kernel ... he's just the most famous one) *WITHOUT* causing downtime by breaking a PC. This stuff is really brilliant.

    ReplyDelete
  13. I've been thinking along the same lines for a while now. There should also be a common data area that all of the virtual machines can access with correctly applied permissions.

    The one, rather major, problem with this is hardware accelerated graphics. There are no virtual environments that can provide full accelerated graphics for Windows, let alone across multiple guest machines either individually or with multiple guests running at the same time. Hopefully this can be addressed and we can see this environment become synonymous with personal computing.

    ReplyDelete
  14. @other Anonymous: You can easily do that with e.g. Active Directory (on Linux you'd use e.g. "Likewise Open") or with LDAP+SAMBA ... you just have to make sure that all VM's from all pools are configured so that they'd use your network share as home directory. Taddaaa. Done. I have that setup here: my Windows, Linux and Solaris VM's all use the same network share, so it doesn't matter where I login, I always have access to my files. Or if you don't want to go through the hassle of configuring network shares ... you could use something like "Dropbox" to sync the data on your VM's. That works tip top too.

    ReplyDelete
  15. @AMO: OpenSUSE's DVD release ships with all desktop environments (KDE, GNOME, WindowMaker, OpenBox, ...)

    ReplyDelete
  16. I love virtualbox.

    Though I dont really see the need for what is described in the article, I think that virtualbox is ideal for something like that. The command line interface allows you to do a lot of things and this is trivial to script in bash. You can then use a subtle window manager that can do full screen and has multiple desktops (my personal favorite is i3) and some CGI web page to manage it graphically if the command line is not your preference.

    All of the above said, the only advantage i see here is that its virtualbox instead of kvm, openvz or whatever other stuff is lying around (proxmox, xen, esx...) ... other than that, getting a minimal linux distro and putting virtualbox on it is also trivial..

    Hell, I'd be prepared to make something like this on top of archlinux

    ReplyDelete
  17. Remember the first release of Ubuntu, or going way back the first release of Debian, or even farther, Slackware? Now it would be interesting to have all of the stable releases from a given distribution virtualized in the same computer and being able to jump from one to another in rapid succession, to get a feeling of how the distributions have evolved over time.

    Or to develop releases focused on different subjects, with themes, applications, etc. etc. etc. limited too and focused on the given subject, let say astrology. To have them virtualized so that whenever the user wants to do Astrology, computations, counseling, historical analisis, etc. etc., he will be able to use a Distribution specialized on that....

    But then if he wants to swith to an entirely different topic he will be able to close the previous distro and open another one concentrated on the new subject....

    From an end user's perspective that is the real beauty of virtualization....

    ReplyDelete
  18. What you really want is separate apps running in separate VMs but all integrated into one desktop so you don't have to think about which OS you need to go to. Check out what the guys over at QubesOS have done:
    http://qubes-os.org/

    ReplyDelete
  19. I just check out http://qubes-os.org/ and their work is quite interesting. It is based on Xen paravirtualizer. I guest it elevates security to a higher level.... but.

    The main purpose of a virtualbox Distribution as I envision, would not be security. It is more like a toy, a way to install and test as fast as possible as many Distributions as possible for evaluation, research, comparative analysis, etc. etc.

    For example,lets say you have a virtual box distribution installed in a computer with plenty of memory and computing power and a big monitor, at least 24 inches diagonal measure. Then you install each and every Debian official releases there has been and run them, each one of them in its own Window.

    This way you can compared the different releases in an instantaneous way. The beauty of this approach is that you could install all of them, side by side in a very short period of time and study them. I think that if we do that with dozens of distros, in a systematic manner we may discover a thing or two about the way that Linux Distributions have emerged and develop over the years.

    Now, with regards to doing actual work on this Virtualizing computer running this Virtualizing Operating System. I think it would be easier to just choose the software you are going to use and set up a minimalist system that only run the software you actually use. The overload imposed by the Virtualizing Software might be too much.

    There are several procedures in most major Distributions, Fedora, OpenSuse, Debian, to pick and choose the programs you want to be part of your system and then remaster it with them.


    But in proposing this Virtualbox Distribution I am not thinking about doing actual everyday computing work on it. I am thinking of creating a testing and research tool to play with, test and evaluate, the various distributions, old and new, and there are hundreds of them. Running them them side by side to study how they work and how the have develop, and how they compare one to another....

    Something simple to install and run in your computer. Of course we can now do that with VirtualBox running on top of your favorite distributions. For example, several days on every week I download the latest ChromeOS by Hexxeh, and run it on VirtualBox to see how the system is evolving.

    But a VirtualBox Distribution will give us an environment configure and optimized to do just that. Install run, test, evaluate, compare and,if necessary, discard, remove, erase any and every one of those installations in a matter of seconds.

    So, I am thinking of a tool to install, test, run in parallel and evaluate, as many distros and operating system as possible, in the safest, fastest way possible. The easier and faster it is to do so, the more people will do it, the more we will learn from it. Hopefully this will help us to speed up the development of OS Distros and software in general.

    ReplyDelete
  20. virtualbox ose roks...
    its simple and lightweight..
    a guide on installation of vb OSE http://fossbytes.blogspot.com/2010/08/installation-of-virtual-os-with-help-of.html
    and best of best open source softwares.. http://fossbytes.blogspot.com/2011/09/best-of-best-open-source-tools-for.html

    ReplyDelete