1048576.com 2 to the 10th, squared!

3Nov/10Off

omnitty on OS X

A kick-ass sysadmin I worked with in the past, that I'll refer to as Mr. Kim, introduced me to the omnitty SSH Multiplexer, "a curses-based program that allows one to log into several machines simultaneously and interact with them, selectively directing input to individual machines or groups of selected machines."

Suffice to say that omnitty is great for working on large numbers of similarly configured servers at the same time such as those making up your web farm. I use it almost every day (and I'm not an admin by day!) for a variety of tasks such as switching out hosts files on 16 boxes at the same time or tailing/grepping debug logs to troubleshoot prod issues.

A while ago I switched to a Mac running OS X as my primary desktop at work. All fine and dandy, until it came time to run my favorite SSH multiplexer. Most of the other guys on OS X run Cluster SSH (cSSH), but I was determined to get omnitty going. It put up a bit of a fight but I eventually got it to work. Below I list how you can do the same.

First, ensure you have gcc (gcc -v will tell you), make and patch. If you don't have them, stop here and install them - Google will readily show you how.

Then, after verifying the prerequisites are there, follow these steps:

  1. Create a new, empty working directory and download everything below to it (i.e. mkdir /tmp/omni && cd /tmp/omni).
  2. Download libROTE, the terminal emulation lib omnitty uses. ROTE is not often updated, the version as of this writing is 0.2.8 (filename: rote-0.2.8.tar.gz). Unpack (tar zxf filename).
  3. Download the omnitty tarball (filename: omnitty-0.3.0.tar.gz); unpack.
  4. Download my OS X patches tarball omnitty-0.3.0-rote-0.2.8-OSX-patches.tar.gz; unpack. Extra credit: check out the README and the patch files.
  5. Patch, build and install rote in one shot (sudo will prompt for your pw):
    cd rote-0.2.8 && patch < ../rote-0.2.8-OSX.patch && ./configure && make && sudo make install && cd ..
  6. Patch, build and install omnitty in one shot:
    cd omnitty-0.3.0 && patch < ../omnitty-0.3.0-OSX.patch && ./configure && make && sudo make install && cd ..
  7. Run omnitty!

You now have this invaluable tool available to use on your Mac! Enjoy it as much as I do.