Running Ubuntu as a Virtual OS in Mac OS X
May 1st, 2008 by Dave Taylor in
Let's start right off by tackling the most pertinent question for this article: why the heck would someone want to run Linux on a Mac system that already has a very nice Linux distro hidden beneath Mac OS X? Built atop NetBSD, there's quite a bit of Linux sitting there waiting to be utilized in the system, including niceties like crontab, robust account management and much more.
Go to Applications→Utilities, and you'll even find X11, a tightly integrated version of the popular Linux windowing system that plays nicely with the graphical interface that defines the so-called Mac experience. What more could a geek want?
The best answer is simply to quote Sir Edmund Hillary, or perhaps misquote him slightly. Why run Linux on a Mac? “Because you can.” If it just feels too wacked to you, take a deep breath and proceed to the next article in the magazine—no harm done.
Still with me? Great. So let's look at the two ways you can run Linux. You can set up a Mac to dual boot, using Apple's Boot Camp system, which is included with Leopard 10.5 and available for download if you're still running Panther (10.4) from Apple's Web site, but somehow that seems clunky at best given the great virtualization capabilities on modern Apple hardware. As a result, I'm going to focus on getting Linux up and running simultaneously with running Mac OS X.
Two robust applications let you run another operating system within a virtual environment on your Mac: Parallels Desktop and VMware Fusion. The former is a Mac-only company, but the latter might well be familiar to those of you who have run Windows within Linux or Linux within Windows, and so on. I've personally used both products for many years.
I settled on Ubuntu, a Linux distro that has been gaining market share during the past few years and is one of the most popular available. It's also preconfigured for both Parallels and VMware Fusion, so that makes it even better. Free operating systems (that is, anything but Microsoft Windows) can be downloaded easily from vendor sites as a preconfigured data image, alleviating the need to install anything at all—simply download.
Both companies refer to these operating system data images as virtual appliances, and I do so throughout the rest of this article too. You can find Parallels' virtual appliances at ptn.parallels.com, and VMware Fusion's virtual appliances are at www.vmware.com/appliances.
Each repository is impressively broad. For example, the VMware Fusion catalog offers you the ability to download Ubuntu 8.04 alpha 1 or 2, Gentoo 2007.0, PCLinux S, GEubuntu 7.10, OpenSUSE Alpha0, Ubuntu 7.10 Jeos with VMware tools already installed, Linux Mint 4.0 Daryna, and many more Linux distributions, all configured and ready to go. Perhaps even more interesting, you also can download gOS 1.0.1-bagvapp, described as “Google-Wal-Mart's Ubuntu Gutsy-based OS for 'Green PC'”. What Wal-Mart's doing with its own Linux distro, I will leave for another article.
I downloaded Ubuntu 7.10 (Gutsy Gibbon) Desktop—English for VMware Fusion (657MB). Interesting to note, the description states, “perfect to test drive Ubuntu or as a secondary operating system running within Windows.” Windows? We'll see how portable these operating system virtual appliances are I guess. At least it includes a useful set of apps: OpenOffice.org 2.3, Firefox 2, Evolution 2.12, GIMP 2.4, GCC 4.2.1, GNOME 2.20 and X.Org 7.2, all atop Linux kernel 2.6.2.
Downloading files of this size takes us into the world of file sharing: you either can download a single monolithic file in RAR format (RAR stands for Roshal Archive, named after inventor Eugene Roshal) or grab the same file through BitTorrent, which requires a BitTorrent client. I strongly recommend the latter, and I recommend Transmission as the client to use (transmission.m0k.org). It took me a little less than two hours to download this file.
While the Fusion Virtual Appliance was slowly chugging down the pipe and I was waiting for the black helicopters of the MPAA or RIAA to show up and kick in my door (just kidding, mostly, on that last one), I popped over to the Parallels virtual appliance directory. Although better organized, it had considerably fewer appliances available, and there was, in fact, only one reference Ubuntu option, described simply as Ubuntu Desktop. Digging a bit further revealed that it was version 7.04 and was helpfully described as “The virtual appliance is the default Ubuntu Desktop Linux installation. There are various GNOME-based applications.”
That's what I wanted, nonetheless, and at 727MB it was broken into either four 199MB RAR files (yeah, that doesn't add up to 800MB, but you know what I mean) served up by hyperfileshare.com or eight files of 100MB from rapidshare.com. I have to say that this is a significant mistake on the part of Parallels, as these file repositories are confusing, and not having the file accessible through the BitTorrent network is a massive drag. The download is more of a hassle, although it downloaded faster: less than an hour when I, uh, borrowed the network connection at the local café. The biggest problem is that downloads cannot be resumed, while BitTorrent is designed to handle frequent outages, which effectively means you never need to download the same byte twice.
An important thing to note when you do download these virtual appliances is the default user account and password for the OS. For the Parallels virtual appliance, it's ubuntu and the password is 123, and for the VMware Fusion virtual appliance, it's jars, with the password jars. Forget those and you'll be digging through your Web browser history to find the pesky information.
While everything was downloading, I made sure I had downloaded and installed both apps properly, VMware Fusion 1.1 and Parallels Desktop 3.0 Build 5582.0. Both offer fully functional 30-day demo licenses, so you can try Ubuntu in both environments without paying a dime. I used fully licensed commercial versions of the two programs, but they're functionally identical.
Once the virtual appliance files were downloaded, as shown in Figure 1, it was time to unpack them and double-click to see what would happen. Remember, Macs are the computers for the rest of us, so it really should be this easy if the vendors have done their work correctly.

Figure 1. Both the VMware Fusion and Parallels Desktop virtual appliances download as RAR archives, easily handled with Mac OS X.
To unpack the RAR archives, I installed and used an application called The Unarchiver, which you can grab from www.versiontracker.com, among other places. I encountered a glitch while unpacking VMware, as shown in Figure 2. I optimistically clicked on Continue, but it didn't work. None of the files extracted were larger than a few dozen KB. Plan B was to download a different Ubuntu virtual appliance, Ubuntu Gutsy Gibbon 7.10 Desktop. And this time, it didn't use BitTorrent, so I watched it slowly download a 468MB image, just to find an archive file ending with .7z, which I'd never seen before. The Unarchiver claimed to deal with 7z archives, but rejected this as corrupted too. Before I gave up though, I downloaded yet another app, 7zX, and after almost 20 minutes, it unpacked successfully.

Figure 2. The first Ubuntu virtual appliance download for Fusion was corrupted, which is darn frustrating after waiting for a 657MB download to complete.
Although the Parallels download comes in four parts, with cheery names like ubuntu-7.04.tar.part1.rar, RAR-friendly apps like Unarchiver automatically concatenate the files. The end result is ubuntu-7.04.tar.gz, which can again be double-clicked on and unpacked to ubuntu-7.04.tar, which again unpacks (why am I reminded of Russian nesting doll puzzles), finally, into the files we seek. The end result is a folder called ubuntu that contains all the necessary files. You can see the files unpacking properly in Figure 3.

Figure 3. It's always exciting to watch a progress bar. This one shows Parallels Desktop virtual appliance Ubuntu 7.04 unpacking from the RAR archive into a .tar.gz file.
Now it's time to double-click on the virtual appliance images and see what happens. In the case of Parallels, I clicked on ubuntu.pvs, and about a minute later, I was presented with the login window shown in Figure 4. I logged in, and it all looked great, but there was no network connection, which was solved by changing the network option in Parallels Desktop itself from bridged to shared networking (NAT), then clicking network connection on the Ubuntu menu bar. A few seconds later, and you can see the results in Figure 5.

Figure 5. Parallels Desktop running Ubuntu within the Mac OS X world, logged in, on the network and quite usable.
With the VMware Fusion archive, it wasn't as obvious what needed to be double-clicked to get started, but Ubuntu-7.10.vmx seemed like a good choice. It worked, as shown in Figure 6, but notice that the window was far bigger than the Fusion parent window. Additionally, VMware Fusion complained that the VMtools hadn't been installed, which was a surprise given that it's a download I found at the VMware site. Also, the account and password pair didn't work, because it was a different VA image from what I originally had planned. I guessed and lucked out: ubuntu and ubuntu worked, and after fussing with screen resolution settings—but not having to tweak the network settings—I had Ubuntu working within VMware Fusion too, as shown in Figure 7.
In the end, I did have a fully functional Ubuntu Linux running within each of the two virtualization environments—one was sufficiently fast that when I put it into full-screen mode on my 2.3GHz MacBook Pro running Mac OS X Leopard 10.5.1, I really could use it for editing documents, surfing the Net and experimenting with Ubuntu and Linux graphical apps. In fact, I was rather surprised by how snappy the operating system was within these environments, as I'd run Microsoft Windows XP and Windows Vista within the virtualization world and had found it functional, but not comparable to a real PC. Linux within the virtualization world, however, was quite pleasantly snappy and very usable.
This leaves us the fundamental question with which we started, why? If you have a logical reason to run a full Linux distro on your Mac for testing or experimentation, or to gain access to applications not otherwise available within the Mac OS X world, this is a satisfying path to travel.
Special Magazine Offer -- Free Gift with Subscription
Receive a free digital copy of Linux Journal's System Administration Special Edition as well as instant online access to current and past issues. CLICK HERE for offer
Linux Journal: delivering readers the advice and inspiration they need to get the most out of their Linux systems since 1994.
Subscribe now!
The Latest
Newsletter
Tech Tip Videos
- Nov-19-09
- Nov-04-09
Recently Popular
From the Magazine
December 2009, #188
If last month's Infrastrucuture issue was too "big" for you then try on this month's Embedded issue. Find out how to use Player for programming mobile robots, build a humidity controller for your root cellar, find out how to reduce the boot time of your embedded system, and if you're new to embedded systems find out the basics that go into one. You can also read about the Beagle Board, the Mesh Potato and a spate of other interestingly named items. And along with our regular columns don't miss our new monthly column: Economy Size Geek.



Delicious
Digg
StumbleUpon
Reddit
Facebook








Mac OS X's Unarchive Utility and Passwords
On January 14th, 2009 lowell (not verified) says:
Wow. I think he gets the message. Mac OS X is UNIX, not Linux because of its NeXTSTEP origins.
Anyways, you /didn't/ have to re-download anything. Mac OS X's default unarchiver can't handle password protected archives (though it never explicitly warns of that) - and it looks like you inadvertently invoked that instead of whatever app you had intended. Next time, remember (and use) either the app's shortcut key or control-click and use the context menu to unarchive to make sure you invoke the right program. Or you can reassign the filetype altogether in cmd-I.
I just wanted to say that
On December 18th, 2008 Anonymous (not verified) says:
I just wanted to say that having the vote star ajax thing above the article prompted me to just try it out and give it one star. it should be placed below the article so people might read before voting...
Mac OS X is built around a
On December 18th, 2008 Teddy (not verified) says:
Mac OS X is built around a *fully* compliant 100% certified UNIX kernel. There is no Linux there. Apple is the world's largest supplier of UNIX-based machines...
VirtualBox?
On December 17th, 2008 David Herron (not verified) says:
You left out VirtualBox -- which also runs on Mac OS X. I use it quite a bit with various operating systems and it does a really good job as well.
I just wanted to say that
On December 17th, 2008 Anonymous (not verified) says:
I just wanted to say that having the vote star ajax thing above the article prompted me to just try it out and give it one star. it should be placed below the article so people might read before voting.
not only does X11 run on
On December 17th, 2008 Anonymous (not verified) says:
not only does X11 run on unix, that's where it was fucking created. linux is the late comer to this game. i like linux as much as the next engineer, but seriously, the opening lines of this article were so inaccurate i gave up and stopped reading.
OS X = Unix
linux ≠ Unix
linux is "unix-like", and linux isn't a fucking OS, it's a KERNEL. get it through your fucking heads.
It took me until he said all
On December 18th, 2008 Anonymous (not verified) says:
It took me until he said all operating systems were free except for Windows. Last I checked, there was a price tag on Leopard.
sounds like a pissed off asshole to me.
On December 17th, 2008 Anonymous (not verified) says:
Who pissed in your corn flakes? You seem like the type to "help" users by giving code to wipe out drives. Go smoke some weed.
or maybe ....
On December 18th, 2008 Anonymous (not verified) says:
Or maybe someone who gets tired of misleading information, especially when it comes from an authority like Linux Journal.
Compiz...
On December 17th, 2008 Anonymous (not verified) says:
Not being able to have desktop effects via Compiz is what bugs me most about running virtual.
Why virtualize?
On December 17th, 2008 Anonymous (not verified) says:
Although Mac OS X is built upon BSD, I was having some trouble getting some bioinformatics C++ code to compile on my Mac. As such, I used VMWare Fusion and Ubuntu 7.10 Server, and it worked great (I already had a few other Ubuntu servers doing the same thing). I was able to allocate one of the quad-cores as well as 4 GB of RAM just to that virtualization.
I haven't used Parallels, so I can't speak to that, but certainly here is at least one example of why someone might want to virtualize Linux on a Mac.
Nice article!
Mallory not Hillary
On December 17th, 2008 Anonymous (not verified) says:
Just a little correction - the quote you allude to in the 3rd paragraph "Because it is there" was made by George Mallory not Sir Edmund Hillary.
http://en.wikipedia.org/wiki/George_Mallory
Wow! Thats amazing ! You
On December 17th, 2008 Anonymous (not verified) says:
Wow! Thats amazing ! You used a virtual machine to store...a...virtual machine...
Next up you should open up the chess app to see if it really plays chess!
Free alternatives to Fusion and Parallels.
On December 17th, 2008 Narcoblix (not verified) says:
i know of at least two free alternatives to Fusion and Parallels. One is VirtualBox, and the other is Q. I would recommend VirtualBox over Q, as VirtualBox is much more polished, but Q is lighter weight, and can be installed without admin privileges. Check both out if you don't have the cash, or just want to experiment without investment.
http://www.kju-app.org/
http://www.virtualbox.org/
Parallels is not a "Mac-only company"
On December 17th, 2008 Withakay (not verified) says:
There is a version of Parallels for Windows too
http://www.parallels.com/products/workstation/
There is also Parallels Server and Parallels Virtuozzo Containers.
It does not inspire confidence when an article has this many basic errors...
Yawn, OS X as a guest OS and
On December 17th, 2008 Anonymous (not verified) says:
Yawn, OS X as a guest OS and Linux as the host OS using Virtual Box, now there is a worthy article.
Use Sun VirtualBox, works GREAT
On December 17th, 2008 Mr. Save My Money (not verified) says:
Save all your money. Use Sun VirtualBox (FREE) and Unbutu (FREE) on OSX and it runs great.
I have it running right now! Works great.
Mac OS X is built on top of UNIX not Linux.
On December 17th, 2008 Anonymous (not verified) says:
Mac OS X is built around a *fully* compliant 100% certified UNIX kernel. There is no Linux there. Apple is the world's largest supplier of UNIX-based machines.
"Built atop NetBSD, there's
On December 17th, 2008 Anonymous (not verified) says:
"Built atop NetBSD, there's quite a bit of Linux sitting there..."
Mac OS X is built atop the Mach kernel, using FreeBSD userland tools and the Objective C based interface from NeXT/OPENStep(to the best of my understanding) and again there is no Linux "sitting" there...
well said A. Seda
Wrong
On December 17th, 2008 AriX (not verified) says:
There are a couple of inaccuracies in this story... Mac OS X is NOT built off of Linux, it is built off of Unix. Please correct this, as the open source fanboys do NOT like it when you mistake the two.
Secondly, not only is Mac OS X 10.4 called Tiger and NOT Panther, you can NOT download Boot Camp for Tiger from Apple's web site. Boot Camp is currently only available for Mac OS X 10.5 Leopard.
How much RAM
On December 17th, 2008 shampoo (not verified) says:
How much RAM do you have on your Mac Book and how much did you dedicate to Ubuntu ?
Clarify...
On December 17th, 2008 A. Seda (not verified) says:
I think you might want to clarify some things in your second paragraph.
"...already has a very nice Linux distro hidden beneath Mac OS X..."
In all cases what is beneath Mac OS X is Unix or Unix like, not Linux.
"Built atop NetBSD, there's quite a bit of Linux sitting there..."
Mac OS X is built atop the Mach kernel, using FreeBSD userland tools and the Objective C based interface from NeXT/OPENStep(to the best of my understanding) and again there is no Linux "sitting" there...
Overall is very nice article....
Virtualization software
On December 17th, 2008 Anonymous (not verified) says:
As well as Parallels & VMware, there's the free, open source virtualization software called VirtualBox (http://www.virtualbox.org)
Also, you can just download a LiveCD of the distro of your choice and install that way (no matter which virtualization software you use), straight from the .iso file - no need to download a virtual disk.
Wow, you missed the point.
On December 17th, 2008 Anonymous (not verified) says:
Wow, you missed the point. Sure, you could download a live cd, but Dave's method saves you the install. You aren't downloading a 'virtual disk', but a pre-configured VM w/ guest tools installed already.
confused
On December 16th, 2008 Anonymous (not verified) says:
You might want to clarify your opening paragraphs; it almost sounds like you're saying that NetBSD and Linux are the same things. OS X is built on top of a Mach kernel derived mostly from FreeBSD, with some chunks from NetBSD as well. X11 runs on the BSDs and other Unixes as well as Linux.
After that, well done :)
Post new comment