What is VirtualBox?
The simplest description of VirtualBox is that it is software that allows you to run another operating system (OS X, Unix, Linux, Windows, and others) in a “window”on your computer. This “window” becomes, in almost every aspect, another computer, and is commonly called a Virtual Machine (or VM). Depending upon how the Virtual Machine is configured, you can install software to it, update it, print from it, copy and save files to it, access the Internet, and use your local network. In short, most anything you can do with a “real” computer, you can do with a virtual machine. You can use a Virtual Machine to evaluate operating systems, keep using legacy software, reuse or re-purpose old computers, experiment with software and updates before live implementation on a critical computer, or simply add or replace an existing computer.
Installing VirtualBox
A couple of months ago, I posted this article on LarryTalksTech: “Install Linux on VirtualBox With Mac Host”. The article discusses where to obtain the VirtualBox software, provides step-by-step instructions on how to configure it, and finally how to install an operating system to create your own Virtual Machine. Though the article uses a Mac as the host machine, VirtualBox is available for most popular operating systems., and the instructions should work any operating system where VirtualBox can be installed. You can find the article by clicking HERE.
Practical Applications of VirtualBox
Here are two examples of how we have put VirtualBox to work here at LarryTalksTech:
1. Breathing life back into an old computer. My MacPro was built in 2007. Though it has some years on it, it works very well. The Mac was built-to-order with two dual-core 3 GHz IntelXeon processors, 4 Gigs of RAM ( later upgrade over the original 16 Gigs), and a 500 Gig hard drive. The problem: The operating system, since version 10.7.5, is no longer supported by Apple. As well, browsers for Google Chrome, Firefox, and Safari are no longer being updated for the OS X 10.7.5. I have three options: do nothing, and accept the added (and growing) security risks; change the operating system completely to Linux, but in the same process, loosing access to programs that I both use and need (Photoshop, Scirvener, etc.); or use a Virtual Machine. With the later option, I can “click” back and forth between both OS X and the virtual operating system. Virtualization, definitely was the right choice.
After installing VirtualBox, I installed LXDE Mint Linux. With the exception of a few of my favorite OS X based apps, I do everything on the Virtual Machine. The trickiest part was finding a “sweet spot” for the RAM settings in VirtualBox for the VM. When using a Virtual Machine, its operating system does not have the same memory requirements as it does in a “real” machine. The host operating system, in my case OS X, still handles a lot of the memory “heavy lifting”, so it is best to keep memory balanced in favor of the host operating system. In my case, I use 2 Gigs of RAM for the Linux VM. My host machine, with 16 Gigs of RAM allows two VMs and the host to run without any noticeable degradation in performance. I created an “alias” for each my virtual machines on my OS X desktop. This bypasses the VirtualBox dashboard, and directly loads the chosen operating system from whatever state you “closed” it in.
2. Create a virtual file server. My server was an “older” Mac Pro with dual 2 GHz Power PC chips. It has a Debian operating system. This has been a very reliable setup; however, similar to my situation with my desktop Mac Pro, Debian no longer maintains the operating system. So…., the server needed a new operating system, and I started looking at software options. I then started thinking about replacing the server entirely, in favor of a virtual machine. I began experimenting. A VM was created using Ubuntu Server, and installed in the VirtualBox on my desktop Mac Pro. Samba was tweaked, and most of the security software I used on my Debain server was put into place. I was particularly interested about how a VM desktop machine would interact with a virtual server on the same host. The result: all the virtual machines function exactly like their real-world counterparts. Perfect, I was sold, and I then created my real virtual server.
I bought a new hard drive to use with the server, and installed the drive in my desktop Mac Pro. As I created the virtual machine, I allocated in the “New Virtual Disk Wizard”, most, but not all, of the hard drive space to “Fixed-size storage”. For my test machines I use the “Dynamically expanding storage” option that sets a maximum for the space used, but reports only space that is used. Some research showed me that the Fixed-size option is more stable, and supposedly offers faster read-write times. The stability option sold me. The only other changes to my “normal” setup was to allocate RAM at 1 Gig.
In day-to-day operation, the virtual server operates as well as the old Mac Pro (albeit with much less heat…Power PCs get HOT!!!). In fact, the only way one would know which server is being used would be from its IP address. An extra benefit is that you can save the server’s “state”, without shutting the server down. At LarryTalksTech, we do not leave our servers on all the time. To me, the most secure server is one that is “off”, so when we leave the office, our servers are shut down. The next morning, by saving the server’s “state”, I can have the server running again in less than 10 seconds. The option for the “save to state” function is available when you close the window for the VM.
What happened to my old “real” server? Besides changing its role, nothing. I know backup the virtual server to it. Should for some reason, the virtual server fail, I have a backup server in place, ready to go.
Summary
Virtual machines are not just for Enterprise grade businesses. VMs can play an important functional role in your home or small office. The software is free. VMs are both economical and efficient. It is certainly worth a try.