Inspired by Chet’s comment, I’ve decided to add a few tidbits I’ve cataloged during my other project for today, rebuilding my Ubuntu box.
Back when I began the WebCenter VM series, I mentioned my latest problem with Ubuntu. My bout with the flu took away all the extra time I had planned to spend on geekery. So, this weekend, I’ve been catching up on my projects.
I’ve been using sbackup for a while, with mixed results. At first, it seemed to be working fine, but when I expanded the 4 GB archive it created, I realized I was backing up to a FAT partition. FAT has a 4 GB file size limitation, so the backup was just cranking up to the max and dying.
Have I mentioned I’m a white belt in Linux?
Anyway, I reformatted the backup drive, and everything seemed fine. Until one day, I started seeing duplicate backup drives, one named BACKUP, the other _BACKUP. I never really investigated the problem, but I think sbackup was having trouble locating the USB backup drive, so it was backing up to a local phantom drive.
Update: This seems to be a bug with USB drives in Jaunty, since it happened again. Weird, must investigate.
This eventually filled up my local drive with local backups, a problem I thought I had fixed, but evidently not, because in November, my account was completely locked because there was no free space on the drive.
That borked up everything, and I couldn’t find a way to recover.
Not a huge deal, since I had a pretty recent backup, and Karmic was recently released. So, I had an excuse to try it.
The one dealbreaker for Karmic was whether I could connect to our VPN servers. The Cisco VPN client is notoriously difficult to get (and keep) running on any Ubuntu release, so I was a bit concerned. However, someone had recently posted a detailed note on how to get it working on Karmic, which gave me hope.
I did a clean install of Karmic, which helpfully notified me that my hard drive may be about to fail. Yikes, ignore, ignore, ignore. Maybe it’ll go away.
All the more reason to get my backups working dependably.
I worked off and on for several weeks to get VPN working, but alas, I ran out of options and made the decision to revert to Jaunty where I knew it worked.
So, that was today’s project.
There were a few interesting tidbits along the way that you might find helpful or interesting. Plus, I’ll have a reference for myself the next this I need to rebuild, and based on my experience with Ubuntu, that time will come in the next year.
We build web apps, so it’s critical to have as many browser versions available as possible. Now that Firefox 3.6 is in beta, I need three versions installed locally, 3.0, 3.5 and 3.6 beta.
Canonical includes 3.0 with Jaunty, since it was the stable version at the time of release. I prefer to install newer versions from the archives provided by Mozilla vs. adding them to the repositories, since I find it easier to use the update menu item to keep them updated.
To run multiple versions of Firefox, you’ll want to create new profiles for each new version. This segments each browser’s data into individual profiles. If you use the same profile for each, you’re bound to get some corruption eventually because there are differences between how different versions use the profile.
Plus, with individual profiles, you can run different versions simultaneously.
Before you install any new versions, run:
$ firefox -ProfileManager
And create a new profile for the new version. Make sure to uncheck the “Don’t ask at startup” option.
Then, it’s pretty easy. I just download the archives, expand them into ~/bin and change the top directory from “firefox” to something more descriptive like “firefox-3.5”.
I create a new launcher for each version, pointing to the new firefox install. If you include “-P -no-remote” in the command, you’ll be able to run different versions at the same time using different profiles, which is handy.
I’m a big fan of Chrome, and since the developer builds for Mac and Linux, Chrome has become my browser of choice. I like to install both the Google build of Chrome and the Chromium nightly builds for giggles. They’re pretty much identical, but sometimes the Chromium devs will release a feature before it gets into the Chrome build.
Unlike Firefox, I like to add the repositories for these to keep them updated, especially Chromium, which has nightly builds.
I’ve collected a bunch of Ubuntu-themed wallpapers, including these recent Karmic-themed ones, and I decided that, rather than pick one, I’d like to have rotate periodically, something built-in to OS X.
After some digging, I found Drapes and this tutorial on how to get it setup and working.
VirtualBox is my VM software of choice, and one reason is that it behaves the same on Ubuntu and Mac vs. VMWare, which has slightly different versions for each and different behavior.
I can clone VMs on VirtualBox and move them between machines without any weirdness.
Here’s a detailed tutorial on how to install VirtualBox on Ubuntu.
This is might be the most useful piece of information in this tutorial. I’m a fan of SQL Developer, but it’s not available as a .deb package for Ubuntu.
To install it, you need to download the .rpm and use Alien, which you can get through the Ubuntu repositories, to create a .deb package.
You’ll need to use apt or Synapic to install the latest JDK first, after which you can install SQL Developer from the .deb.
The final step is to create a ~/.sqldeveloper directory and a file called jdk in it. Add the Java path to that file and save it. Then you can launch SQL Developer from the application menu item the .deb package creates.
H/t to this tutorial for the skinny on this non-obvious process.
Finally, I had hoped to move to Thunderbird 3, which is now up to a release candidate, but the calendar add-on, Lightning, isn’t yet compatible with 3. I use Lightning to view my Beehive calendar from inside Thunderbird, which is a huge plus.
No magic for Thunderbird 2, which is easily installed from the Ubuntu repositories, but Lightning has a gotcha that is worth sharing. You can’t add a new calendar unless you install a required package, libstdc++5.
I guess it sometimes does pay to RTFM, but then again, as with most things Linux, someone has probably already worked it out before you. So, just Google and hope for the best.
Anyway, I hope some of this was helpful. Find the comments if you want to add details or correct me.