VirtualBox vs. Dedicated Linux System

I mentioned in an earlier post that I’d write a little bit more about my decision to run Debian through VirtualBox on a Windows machine.

So, here we are.

This post is more of a ramble than anything else.  There’s no real substance here (and feel free to agree or disagree with that), I’m just jotting down some thoughts and providing a little background for other posts I plan to make.

Let’s first look at why I need Linux on a “real computer” at all.  Other than acting as a web development server (where I prefer to use the same server environment that the live production server will be using), Windows satisfies the majority of my needs these days.

With using the Raspberry Pi and CubieBoard so much recently (both of which are running Linux), I’ve had to compile certain applications myself.

The problem with this is that large software can take a very long time to compile.  XBMC, for example, took about 15 hours to compile on the 1Ghz 32Bit CubieBoard.

Being able to cross-compile these things on a 64Bit machine with multiple fast cores, a lot more RAM, and faster storage should speed such times up to more bearable amounts.

I have two machines here that I use for most of my work.

Machine #1 – AMD FX-8350 (8 core 4Ghz), Asus Sabertooth 990FX, 16GB DDR3, 512MB Nvidia 9800GT graphics (yeah, it’s an old card by today’s standards, but it’s still fantastic for my needs – and pulling it out of my old machine means I didn’t have to buy a new one), and about 9TB of hard drive space running Windows 7 Home Premium.

Machine #2 – AMD Dual Core 3.5Ghz, middle-of-the-road motherboard (I don’t recall exactly which off-hand), 16GB DDR3, 2GB AMD Radeon HD6570 (again, not amazing, but it does the job just fine – working in partnership with the onboard AMD graphics), with just a 500GB hard drive running Vista Home Premium (shut up).

Machine #1 is my main machine, the one on which I do most of my work.  This would be an amazing Linux box, but it needs to remain Windows.  I use too much software for work that relies upon having Windows as my operating system.

It’s been suggested that I switch Machine #1 over to Linux and run Windows in VirtualBox, but I think I’d just take too much of a performance hit (and After Effects can get pretty power hungry).

Machine #2 would be an ideal candidate, and I may ultimately still turn this into a dedicated Linux box, but for now it’s a machine that helps me to separate work from play.

Both machines have on-board graphics built into the motherboard, but I’ve still put a separate graphics card in each.  This is because I like running a pair of monitors.

I’ve been running 2 or more monitors per computer for probably about 15 years now.

It’s fantastic for Photoshop, After Effects & Premiere, and it drastically speeds up workflow for web development and general day to day tasks having that much more “screen real estate”.

Having this extra screen space made running VirtualBox a great idea.

I could run Debian and bring it up full screen on my second monitor – yet use the same keyboard and mouse to operate both, copy+paste between the two, and all that jazz.  At least, in theory.

It took me a few goes to actually get Debian installed and working.

After figuring out what was causing the installation to freeze up, I decided to have a go at installing a full system.  With 4 cores, 4GB RAM, 128MB 3D graphics, and a 64GB virtual drive dedicated to it, it should’ve been more than plenty to run it.

It was, sort of.  Once installed, and rebooted, it ran, and ran pretty quickly, I was rather impressed.  For about 15 minutes, anyway.

After booting up into the graphical environment, having a look around and figuring out how to reconfigure shortcuts, wallpaper and other bits, the interface would suddenly disappear and I couldn’t do anything.  The background stayed up, but everything else just suddenly became missing.

No idea what was causing it, but it’s not workable, having a system that could make the GUI disappear at a moment’s notice (not allowing me to save anything I’m working on).

The only way to reboot the system in such instances was by issuing a reboot signal from within VirtualBox.

A graphical environment isn’t essential for what I wanted to do with it (cross compiling), but it would’ve been nice.  This is the reason why I still may eventually turn Machine #2 into a dedicated Linux machine.

There is another option.  Machine #3.  Of course, Machine #3 doesn’t exist yet.  I’d have to acquire the components and build it myself, but it is an option nonetheless.

For now, though, start from scratch with just a minimal Debian setup in VirtualBox with no GUI on 2GB RAM and 2 cores, and I’ll just SSH into it as needed.



TL;DR – I need to cross compile from a faster system for the Raspberry Pi, CubieBoard, and whatever other ARM based boards I happen to pick up.  VirtualBox seemed less problematic than fully converting a system I already have or building a new dedicated system.