Review of Sun's Free Open Source Virtual Machine
goombah99 writes "After snapping up virtualization company InnoTek at the beginning of the year, Sun has recently released VirtualBox as a fully functional and highly polished free GPL open source x86 Virtual Machine. It can host 32- or 64-bit Linux, Windows XP Vista and 98, OpenSolaris and DOS. It runs on Mac OS X, Windows, and Unix platforms. The download is just 27MB. A review of it on MacWorld, showing HD movies playing inside windows XP on a mac, demonstrates performance visually indistinguishable from VMware. Like its competition, it can run other OSes in rootless, rooted, or seamless modes display modes (where all the applications have their windows mixed at the same time). Each VM instance can only run single core (though I/O is multi-core), and it does not yet support advanced windows graphics libraries however, so some gamers may be disappointed. Slashdot discussed the InnoTek acquisition earlier.
but yeah, in the last few months, it's seen some polishing (particularly the Macintosh features).
Do you even lift?
These aren't the 'roids you're looking for.
The best virtualization I've found for windows hosts. Works great - I run Vista Ultimate host & Ubuntu guest in seamless mode on my laptop and everything is still fast as hell!
I'm happy.
The binaries are not Free for corporate use. The source is free (GPL) but good fucking luck compiling it on a windows machine. Maybe you could compile it on a linux machine but on windows it assumes a development environment complete with every freakin' thing under the Sun (no pun intended). I gave up after two days of trying to get it to work.
The weird thing is that the boot time for XP in the virtual machine is shorter than on the real one.
I find this to be an excellent VM that continues to make a lot of progress. After using VMWare server, Bochs, and QEmu, this one really takes the cake on both performance and usability. Virtual machines are easy to set up using a nice graphical interface, and all of the bells and whistles require no extensive configuration (sound, mouse integration). Running a Gentoo hardened Linux on amd64? No problem. Some of the features that really put VirtualBox above the rest for me:
Best of all, it's FOSS.
Sun was a proprietary vendor for quite a long time. Practically the whole reason that they take so long between announcing something is going to be open source (eg, Solaris and Java) and actually getting it into the public, is auditing the entire source tree to make sure they don't release some component licensed from some other company when they're not supposed to do that.
No 64-bit support in released versions. No libvirt driver (yes, there's a fancy C++ API; libvirt is simpler and easier and has bindings for everything).
It's fantastic for running a Windows desktop VM -- particularly with the seamless-mode support -- but has no place anywhere near my QA lab.
for benchmark information about virtualbox vs kvm vs vmware workstation, you might be interested in http://dipconsultants.com/press/24508-1/
Have you looked at what the open source version of virtualbox currently lacks?
The following list shows the enterprise features that are only present in the closed-source edition. Note that this list may change over time as some of these features will eventually be made available with the open-source version as well.
* Remote Display Protocol (RDP) Server
This component implements a complete RDP server on top of the virtual hardware and allows users to connect to a virtual machine remotely using any RDP compatible client.
* USB support
VirtualBox implements a virtual USB controller and supports passing through USB 1.1 and USB 2.0 devices to virtual machines.
* USB over RDP
This is a combination of the RDP server and USB support allowing users to make USB devices available to virtual machines running remotely.
* iSCSI initiator
VirtualBox contains a builtin iSCSI initiator making it possible to use iSCSI targets as virtual disks without the guest requiring support for iSCSI.
* Serial ATA controller
Like a real SATA controller, VirtualBoxâ(TM)s virtual SATA controller operates faster and also consumes less CPU resources than the virtual IDE controller. Also, this allows you to connect more than three virtual hard disks to the machine.
I could understand iSCSI and RDP, but c'mon, USB too!
To me they're just trying to get good PR from the Open Source community for an almost unusable piece of software, to push the closed source version. While certainly much better than Microsoft, Apple and others, that's still not open enough for me.
"One of the main things I like about VMWare is the "Snapshot" capability which lets you create multiple "restore" points (in an easy to use visual "tree" manager) that you can instantly return to. In fact you can have a VM automatically revert to a snapshot. Does VirtualBox have any sort of advanced snapshot management?"
Yep.
"It is our choices, Harry, that show what we truly are, far more than our abilities." -- Prof. Dumbledore
I've been running it since before the InnoTek acquisition. They do not currently support 64-bit guests, though they claim it is in the works. It does however work on a 64-bit host.
not yet, maybe in the future. You can run virtualbox in a 32bit or 64bit host, but can't run a 64bit guest OS.
Better get crackin... VMWare supports DirectX 9 (on appropriate hardware).
I said no... but I missed and it came out yes.
VirtualBox's greatest failing is that in using QEMU's I/O and networking code, they've made it a royal pain to set up bridged-mode networking on Linux hosts. You get to write two scripts, to add and remove a TAP device from a host-side bridge, and get to set up said bridge on the host yourself. Not only this, since the 2.6.18 kernel you need to run VirtualBox VMs as root (or set up sudo with /etc/sudoers not to prompt for a password and use it within your scripts), because only the superuser can manipulate the TAP/TUN devices; chmodding them writable by a particular privileged group is insufficient.
Compare to VMware, which handles all the bridging etc. by itself—much more convenient to use.
Then there are VirtualBox's "Guru meditations", obscure ERROR_MESSAGES_THAT_LOOK_LIKE_THIS and provide minimal information, often requiring perusal of the source code to figure out what's wrong. This is entirely unsuitable for end users as well as people whose time is valuable.
Finally, I tend to run a 64-bit kernel with 32-bit userspace. VirtualBox does not support this combination—it's either 32-bit kernel with 32-bit userspace or 64-bit kernel with 64-bit userspace. (VMware on the other hand does support 64-bit kernel with 32-bit userspace; its failing is that [as far as I know] there is no non-beta 64-bit userspace for VMware yet, though this will change with the release of VMware Server 2.0 and VMware Workstation 6.5.) This is only really a problem on Debian and Debian-derived distributions like Ubuntu, whose package manager (dpkg) is too incompetent to handle multiarch properly, despite work ongoing for about four years now, so the user has to set up a 64-bit chroot environment. (Fedora, RHEL and CentOS get this right; rpm can handle multiarch properly, so it's only a matter of installing the appropriate libraries there.)
VMware also supports 64-bit guests on certain processors. VirtualBox doesn't support 64-bit guests at all.
So in my view, between the two, VMware still wins, open source or no open source.
VMWare and Parallels seem to be better choices if you can afford them
vmware server edition is free, barring a registration via email. At least it was 3 months ago...
Lack of planning on your part does not constitute an emergency on mine.
I spent a lot of time trying to get VirtualBox to play nice with FreeBSD. I'm much more familiar with BSD-flavored *nix (esp re: creating jailed environments), so I run a FreeBSD box as a cvs server for the programming classes I teach. I planned on migrating this function to a virtual machine this year. Unfortunately, VirtualBox would go down in flames every time I did a build-world. Web searches availed little.
I tried using OpenBSD instead, but that ended up being worse. The install looked something like
I eventually had to migrate my partially-finished FreeBSD disk to VMWare and finish my work there. It's a bit of a bummer, because VirtualBox does appear to have some really neat features, especially for XP guests. Still, I gotta use what meets my needs.
I couldn't get the networking to work in NAT mode, and bridging mode on a laptop ain't always the best idea.
There was a nice bug in 1.6.0 that severely hindered networking, it has been fixed in 1.6.2 though. I only had problems with bridges and tun devices, I didn't try NAT, the bug reports had windows hosts and Linux guests, my situation had Windows and Linux guests on a Linux host. To summarize the bug: networking works perfectly until you reboot the VM, then there is no working network.
Getting the networking system to work is a bit of a pain, but I've only had minor difficulties when using the host interface. NAT will work, but you won't be able to ping or access any resources in your own network (which is a bad thing if you have a fileserver at home and wish to access it on a VM). There are, however, a few tutorials that can help you get started with bridging your network for Windows hosts or a variety of Linux hosts.
FreeBSD is the only guest OS I've had difficulties with (even MSDOS will work, but it requires some additions to prevent it from eating up your cycles like crazy--FreeDOS plays nicely, though). I could only ever get the NAT-based networking to work and even then it would freeze whenever IO operations peaked.
Take a look at some of those articles, and you might be able to get networking up and running in VirtualBox! I have to say, for something of a FOSS offering, it's really nice.
He who has no
Parallels sold me their desktop software when I bought an Intel Mac. After repeated crashes (OS X kernel panics, not just application panics), they finally admitted that it was their fault and they hadn't read the documentation about how inter-processor interrupts were meant to work, so their kernel module crashed regularly on any Core 2 Duo machine. Their suggested fix? Buy the new version. Those pirates deserve to go out of business.
I am TheRaven on Soylent News
I swore by VMware for the longest time until I stumbled across VirtualBox.
It is much, much faster on my machine. Damn near the same as if it was installed on the hardware.
If I ever actually needed Windows for more than Photoshop (CS2 now runs fine under WINE).
One feature I am looking for (and have not found yet via reading the net) is if it's possible to use a physical disk instead of a virtual disc.
It's really handy trying to install pfSense on a flash drive (the dd method doesn't work)... although there are other uses I could use it for, too.
" Even now, it is a real pain in the butt to actually get a copy of OpenSolaris and install it as a normal user. They make you install a proprietary download manager and give them a bunch of personal info."
How long ago was that? Last week I downloaded an iso straight from opensolaris.com and had it running in virtualbox soon after without having to give any personal information and without needing any download manager.
The process was no different from that of a linux liveCD distribution.
With reservations.
You can't have snapshots of RAW disk images. it's also widely acknowledged (see the VB forums) that snapshot management is a weak point.
If you need snapshots, wait a few months/years until it works solidly
politicians are like babies' nappies: they should both be changed regularly and for the same reasons
Well... every benchmark avalaible (just Google) shows that VMware is consistently way faster than VirtualBox; even in graphics. If the fact that your scheduler can't cope with the extra load VMWare needs annoys you, just ionice/nice it. It will then have similar performance to VBox.
If VMWare is slow for you in Seamless/Unity mode, it's often due to your window manager. VirtualBox uses a dirty trick where all the Virtual machine windows are rendered in a single, screen-sized, transparent window. VMWare does it the good way (TM) and opens a new GUI window for every VM window, so it gets free integration with the host taskbar/alt+tab.
With the VirtualBox "hack", you'll never get your decorator/compiz window previews to work.
Yes. In fact, for those few people who still need OS/2, VirtualBox is one of the few that do support OS/2. At least one major company runs a significant amount of its infrastructure on OS/2 guests running inside a VirtualBox VM on a Linux host.
I had the same network problems, and on top of that the USB support is buggy at best.
For something like a webcam it was absolutely unusable.
I had a workaround script for this that takes down and brings back up the tunnel and bridge I was using for VirtualBox. I haven't needed to use it since upgrading to the latest and greatest.
And I'm running VMWare workstation on top of Windows Vista Ultimate 64bit. Running on top of 64bit was fixed with the version 6.0 release of Workstation.
The documentation states otherwise and you will notice the release date for VMware workstation 5.5.2 -- with 64bit Host support -- was May 2006. I have used a 64bit Host OS for VMware workstation for nearly that long.
If you are stating the free ESX Server does not support 64bit Host OS, the GSX documentation from December 2005 specifically states Windows Server 2003 x64 can be used as the host OS.
Have you tried looking at VMware lately?
Every mans' island needs an ocean; choose your ocean carefully.
It's not a hypervisor. It's basically just an application that you run under your real OS.
The main OS treats it as an ordinary application. The primary OS firewall will effect hosted machines, for example, and as far as audio, as long as your primary OS can deal with multiple applications playing sound, then it's a non issue. Otherwise, it happens as any other conflict would. Generally, first to open the device wins.
Yes, you can move the VM images around. Part of the whole point of the VM is that it is running on the virtual hardware, and doesn't have the ability to know what the physical hardware is.
Problems with FreeBSD have been solved
So for example if I my mac is the master OS, and I set up a firewall set, does the windows OS have to go through the mac's firewall (and thus be protected better) or does it have direct access to the ports itself.
When setting VirtualBox up under Gentoo, I had to create a new network 'device' specifically for VB, and would have to create one for each virtual machine had I not just decided to stick with 1 virtual machine. From my understanding, VB is protected in the following fashion:
eth0 and tap both connect to br0, so the chain would go:
Internet eth0 br0 tap. I would imagine that if the firewall were applied to either eth0 or br0, it that would protect both the host and client, since the host interfaces with br0 while the client interfaces with tap, but someone else will have to confirm that here.
Qemu is the best of VirtualBox, which is why I'd pick Qemu *over* VirtualBox any day.
Networking is simple with user-mode networking. Most people don't *need* bridge-mode. If you do use bridge mode, it works using standard Linux networking stuff, not some proprietary mess like VMWare. Regular users can do TUN/TAP devices just fine, BTW.
Luke-Jr
hookups to scanners and printers. Except for OpenSolaris and W98SE (explicitly not supported), I've had working scanner and printer support on every OS (Kubuntu/Ubuntu V7 and V8, OpenSuse11, XP) I've tried Sun Virtualbox v1.6.2 with. I've been using it to review operating systems for publication. If I'd had a scanner and printer that worked with OpenSolaris, I think it would have worked just fine there, too.
Linux webcam support is problematic whether you're trying to get it on a real or a virtual machine. Has your webcam worked on any Linux physical box you've tried it on?
I'm planning to replace VMware Server with VirtualBox completely on this box. (Debian Lenny host)
Tech Public Policy stuff
I'm sure there was a "no" post somewhere that was informative :D
No
I find that VMWare is quite fast if you install the VMTools in the guest OS and the integration (cross VM copy/past / drag and drop, seamless mouse pointer, etc) is quite nice.
VB has something similar, called "Guest Additions", IIRC. I don't know if it makes the VM any faster, but I do know that it has clipboard sharing (with options on which ways it goes) and seamless mousing.
This is not a signature.
VMWare Server 1.0 works pretty well for basic desktop use, and has a number of useful features that VMWare Player doesn't.
I'd stay away from 2.0 unless you really want to run a server though. They replaced the nice, intuitive admin GUI with an ugly, buggy, and barely usable web browser based interface. To add insult to injury, the Tomcat instance takes 100+ megs of RAM.
* Maybe Ubuntu users are used to that kind of thing.
it does actually. Very simply, it allows saving a virtual box in any state it's in and restoring it to the state you saved it as. I've been using it for quite some time now and I have some 5-6 virtual boxes on it, and it works just as it should.
Ok, must admit, I have no idea about VMware (might be way better). Mostly because VirtualBox (on Fedora 8) does exactly what I need, ie run 2 versions of WinXP (IE6 and IE7) and even a Win98 box.
I think, in some way, that may have to do with their accessibility of code, being that it was easy to get VirtualBox and kind of messy to find out how to get Vmware.
The surest sign that intelligent life exists elsewhere in the universe is that none of it has tried to contact us. BW.
Even now, it is a real pain in the butt to actually get a copy of OpenSolaris and install it as a normal user. They make you install a proprietary download manager and give them a bunch of personal info.
I'm not sure I understand how difficult it is to get OpenSolaris, when all you have to do is go to http://www.opensolaris.com/get/ and click "Download". It doesn't ask for any personal information; in fact it doesn't ask for anything at all, except where do you want to save the ISO to.
Even the old Sun Download Center didn't *require* a proprietary download manager, only recommended it. And it asking you to provide a name, a company name, a country, and a phone number (pretty much all of which can be faked) isn't "a bunch of personal information". It may be a bit, but it isn't a bunch.
In this case they've made the binaries for this project unavailable for corporate users in a clear attempt to try to make things artificially hard so they can make money on unnecessary service contracts
You haven't read any of the documentation, FAQs, or even the thread here. Corporate users can download Virrtual Box and use it. In fact, several of the engineers and administrators on my team have it installed to make it easier for us to interact with our servers from our desktops/laptops.
A longer answer still is that most people on Slashdot are probably exposed to the worst of Sun as part of their jobs: the 10-year old behemoths.
Funny, within my company we have literally hundreds of 10-year old Sun behemoths. And we don't have anywhere near the kinds of problems you are speaking about. Our 10 year old Sun boxes just continue to run. Hence the reason they haven't been replaced.
That has been changed in the latest beta release. They've moved back to the admin GUI.