Installing Ubuntu 13.04 on a Mac

I like having a Ubuntu install handy to play around with. It’s already on my PC as a VirtualBox image, but 3D acceleration refuses to work, so I can’t upgrade it beyond 12.04 as there’s no more Unity 2D after that and upgrading prompts dire warnings about terrible performance. I decided to try installing 13.04 (Raring Ringtail) onto the Mac with VirtualBox.

Installing VirtualBox was easy. Download the Mac versio and drag it to the Applications folder. That’s generally the case for installing Mac apps, although some of the newer ones can be obtained from the App store, just like for mobile devices.

Creating a new image, mounting the ISO file and installing Ubuntu was no problem. In fact, the install wizard seems to have been streamlined a bit.

However, running it was a different issue. Opening the ‘Start’ menu took ages as it slowly fades in, and just getting it to go away took another eternity as it slowly faded away. A bit of Googling revealed that the problem was a lack of 3D acceleration. That apparently causes it to use the CPU to render the graphics, leading to terrible performance.

The solution was found in this forum thread. Basically, install the VirtualBox extensions, install guest editions, then insert the line ‘vboxvideo’ to /etc/modules

Reboot and check that 3D is supported with the following command.

/usr/lib/nux/unity_support_test -p

If that shows all green, everything should be running much smoother!


Upgrading a MacBook with an SSD

SSD Macbook


Having bought a new solid state drive (SSD), I needed somewhere to use it. Mountain Lion runs terribly slow on a 2009 MacBook Pro, so I decided to upgrade its hard drive to an SSD. I had originally planned to use it for a new desktop, but that isn’t going to happen anytime soon and it seemed like such a waste to leave a perfectly good SSD lying around.

The hard drive replacement was quite easy. Just unscrew everything and replace the drive. Some other websites should provide much better instructions. The main thing to note is that the hard drive support posts use a funny star shaped screw. I still have my friend’s toolkit from the last drive replacement so this wasn’t a problem.

Prior research had led me to the Recovery Disk Assistant, a bootable recovery USB stick. Plugging that in and starting the Mac starts a recovery utility. Start by adding a partition and formatting the disk using the disk utility.

Next, install the OS. The utility prompts for an AppleID. Use the account used to purchase Mountain Lion. The installer will now download the whole OS from the App Store. This requires an Internet connection, which can be configured from the recovery utility. Go do other stuff while it downloads and installs the OS.

At the end of the process, it will prompt for a location to restore user data from. One of the options is to use a hard drive. I plugged in the hard drive I had just replaced as an external USB drive. The installer automatically detected the applications and user data and offered the option of restoring it. I just let it do its thing and at the end of the process, the data recovery was complete without me having to manually dig up the application install disks or recreating the user accounts. It just worked!

The Mac now starts up in less than 10 seconds. Applications start much faster and Mountain Lion is finally acceptably quick.

I’m really amazed by the ease which I could reinstall the OS and restore the data after changing out the hard drive. The performance increase is very nice too. However, it’s a little disappointing that Mountain Lion needs an SSD to not feel sluggish.


Network Scan with Mac OS 10.8

Having already set up network scanning with little fuss on my Windows machine, I was expecting a simple task on Mac OS, but nooooo.

The shared folder method over Samba fails with a login error. Some googling suggests that it’s due to a change in the port number from NetBIOS (139) to TCP/IP (445). Naturally I couldn’t find an easy way to change that on the Mac.

Neither does the address book on the printer’s configuration page allow port 445. Only 139 and a range of 4 digit numbers are allowed.

Thus the alternative is FTP. To enable that, it is necessary to open a Terminal window and use the following command.

sudo -s launchctl load -w /System/Library/LaunchDaemons/ftp.plist

That enables FTP with authentication. Logging in with an FTP client with a user account will bring you to the user’s home folder. I created a subfolder there to keep scan output and configured that through the printer’s web interface.

Now it works 🙂

Reinstalling Mountain Lion

Upgrading from Snow Leopard to Mountain Lion has proven to be a lousy experience. The computer was much slower and the spinning wheel icon kept coming up. Endless frustration.

Before giving up on Mountain Lion, I decided to give it another chance by doing a fresh install. As with all fresh installs, start by backing up your stuff. I simply opened Finder and copied everything in each user’s Home folder over.

OS X has something called OS X recovery which allows recovery without any installation media. To access this, restart the Mac and hold down cmd + R until it boots into OS X utilities. From there, it is possible to erase the disk and select the option to install Mountain Lion.

The utility will ask for the Apple ID and password used to buy Mountain Lion, then proceed to download the whole thing before installing it. Just let it sit there and finish the whole process. It’s quite painless.

After Mountain Lion installed I copied the data back and reinstalled applications from their install discs. There was a bit of a problem with iPhoto at first when it refused to open the backed up libraries. It complained that the library was created with a newer version of iPhoto. Doing a software update solved the problem.

However, some old emails were lost. the ~/Library folder is hidden in Mountain Lion and thus was never copied when I first backed up the data. Mac OS stores mail somewhere in the Library folder in the user’s home directory. Oh well the perils of hiding “complicated” things from the user.