Category Archives: Tools

Home Projects

I recently moved into a new home after living for nearly six years in another. In those six years I got everything fixed and had a plan for what to do next. I hope to document the fixes in this new house and share the progress as I learn some new skills. This house is much older though has been lovingly maintained and updated over the decades.

I like small maintenance fixes like these. I haven’t glazed a window in a long time, probably with my Dad when I last did it. Time to start my own collection of glazier points.

The co-ax cable jumble will be solved using this nifty tool. The tone tester is going to be useful so that I can label which cord goes to which room. For an old house, it seems to have a co-ax cable in nearly every room.

The outlet box hopefully just needs a little caulking and the screws securing it to the wall moved a little bit.

Since starting this draft, some small fixes/upgrades have been made. A little sink stopper was dropped in place in the middle floor bathroom and a dud light bulb was replaced. Just small stuff but it is moving forward. I also mowed the front yard and raked the flower beds for the first time.

2 Web Performance Books

I recently read two books focused on website performance.

Designing for performance (weighing aesthetics and speed) by Lara Callender Hogan.

Responsible Responsive Design by Scott Jehl.

The first book is interesting and a very good primer for new developers or for folks that have never considered web performance based on design trade-offs. The second book was a very handy manual of sorts and was my favorite.

I would reccomend reading both if you haven’t had a chance. They should be available from your local library through inter-library loans.


Installing a new antennae on KK-Louise

Broken antennae
Broken antennae

Recently KK-Louise, my 1971 VW Bus met an automated car wash. The car wash ate the last of the original 44 year old antennae. The attendants at the car wash were able to grab the whip that broke off and it was full of rust. I was pretty happy with how this one worked so I ordered a replacement from the Bus Depot. They had a chrome replacement, just like on my bus for $20.00. The new antennae is a bit lighter than the old one but looks the same.

To do the job I needed a 3/4″ wrench for the big nut, an 11mm wrench for the old antennae base, an 8mm wrench for the new one and some pliers.

New antennae in package
New antennae in package

Removing the old antennae was straightforward. I’m lucky as my hand and arm were able to contort to reach the 3/4″ nut and the little 11mm bottom nut. I found I had to use pliers to loosen the wire that runs from the radio to the antennae.

Headlamp, pliers, 8mm and 11mm wrenches, and 3/4" crescent wrench.
Headlamp, pliers, 8mm and 11mm wrenches, and 3/4″ crescent wrench.

Back of antennae when installed.
Back of antennae when installed.


Watermark around the antennae mounting hole.
Watermark around the antennae mounting hole.








Once I took the old antennae off there was some watermarks around the old location. I used some cleaner wax to remove the watermark and then put the new antennae in place. The new one went right in but I did find it helpful to start the top nut first or it wanted to tumble out of the hole.

The only snafu was the antennae wire from my original antennae used an older style connector so I had to replace the wire. The new antennae came with a compatible wire so it was just a matter of reaching around in the back of the radio and unplugging the old one and putting in the new one in. I was happy to have my radio manual which helped as there was both the antennae and a sub plug area.

Overall the installation was straightforward and is now rust free so the next time I think an automatic car wash is a good idea, it just may not get ripped off. The reception is great with the new antennae.

The new antennae installed.
The new antennae installed.


Monitoring Drupal with Icinga


Monitoring one or two Drupal sites can be done by logging into the status report every few days and reviewing settings, looking at your watchdog log, and reading the emails the sites send you. However, as you run more and more sites that process becomes overwhelming and can take up a large amount of time. A few services exist to help monitor all of your sites in one place, Droptor, Drupal Monitor, and Acquia all provide really slick solutions. However, if you want to roll your own due to cost, corporate security, etc… the Drupal community has developed several tools leveraging Nagios.

I wanted to set this up to monitor the sites I manage and chose to use Icinga, a fork of Nagios and openSUSE 12.2 as that is consistent with our environment. Currently I am doing this as a proof of concept project and it is running inside of VirtualBox on an older Mac. The Drupal projects that I am using are the following:

These two modules first let us talk with our Nagios server but also provide most of the stats you can find in the paid services. On initial install the results are not all that pretty to look at but I believe there are ways to fix that and I would rather have comprehensive than pretty any day.

Installation was inspired by the post at awebfactory. There is currently no write-ups on how to do the install if you are using Icinga but since it is a fork of Nagios all of the steps are quite similar. I still know very little about Nagios so if you see a goofy config file please improve upon it. The readme file that accompanies the Nagios Monitoring module is fairly comprehensive and if using Icinga use the Nagios 3 style configuration options. Here are four tips that I wish I had known while setting this up.

4 Tips

  1. You must define a host in your .cfg file you create for monitoring the Drupal sites. The README assumes you have done this already but if you are creating a monitoring server from scratch this is news. Add the following at the top of the hostgroups.cfg file the instructions ask you to create.
    define host{
            use                     linux-server
            alias                   DevVM ; You will see what you put here in Icinga
  2. The unique string you generate for use in the module and within Icinga goes where the instructions have the words unique identifier.
  3. Initially my Drupal check was not returning any results. I got an error “Service Check Timed Out.” My dev server is a little pokey so I needed to edit the service_check_timeout line in icinga.cfg from 60 to 600. I chose 600 because this article uses it, very scientific, I know.
  4. The SUSE Icinga package places Icinga in /etc/icinga, /etc/init.d/icinga check_verbose checks your settings in the .cfg files you have edited/created and /etc/init.d/icinga restart restarts the service.

Installing Icinga

Thankfully there is a package for Icinga in the openSUSE repositories. I installed this using the GUI tools but if I move out of a proof of concept phase I would do this with an openSUSE box run level 3 so I will try to show the command line install options rather than how to use Yast. This generally just involves following the documentation at

Install the dependencies:

$ zypper install gd gd-devel libjpeg libjpeg-devel libpng libpng-devel
$ zypper install net-snmp net-snmp-devel perl-Net-SNMP

Create a user named icinga, please follow the instructions at the link above.

$ zypper install thttpd
$ sudo vi /etc/icinga/etc/objects/contacts.cfg

Change the email address associated with icingaadmin to one that you can receive email at. ESC : wq ENTER to exit.
Set the password for icingaadmin
$ htpasswd -c /usr/local/icinga/etc/htpasswd.users icingaadmin
$ sudo /etc/init.d/apache2 reload

Make sure Icinga starts when you boot.

$ chkconfig --add icinga
$ chkconfig icinga on
Verify everything is good with your initial configuration.
$ sudo /etc/init.d/icinga check_verbose

Start Icinga

$ sudo /etc/init.d/icinga start

Navigate to http://localhost/icinga/ and login with icingaadmin and the password you set earlier.

Install the Nagios Drupal Check service

The steps in the README file are correct for openSUSE. Just use the Nagios 3.x version of the commands and follow tip number 1 from above.

Final Result

Drupal Nagios Alert
A nagios alert showing issues with a site I have in dev.

I started monitoring a site I have on my devVM and it shows me a boatload of issues. Core is out of date, stuff is turned on that shouldn’t be for a production site, modules need to be updated, etc… The beauty of this is that I simply need to turn the module on for each site I want to monitor, update my hostgroup definition in hostgroups.cfg and I have instant monitoring. I hope to provide further details such as NRPE on the remote host, selective alerts, and a prettier interface.

Thank you to everyone I have linked to in this article and to the developers of the fantastic Icinga, Nagios, and Drupal modules. On a happy note, Acquia itself uses Nagios to monitor their sites in the Acquia cloud.

AMAHI CHOWN and backups

I just finished setting up an AMAHI server for our home office use. It was a fairly straight setup except for the backup folder creation. Supposedly it creates a folder called backups automatically upon installation, that did not occur for me.

AMAHI runs on Fedora 12 which I found out is a bit different than Ubuntu 7+. You cannot just create folders in the HDA directory because you do not login as root and cannot do so from the GNOME GUI. You must do it from the command line.

This is not all that bad, just a bit of an annoyance because of AMAHI stating that backups work with a clean install. Here is how you do it.

First you must open a terminal, Applications -> System Tools -> Terminal. Or I think you can use Alt-F2 and type gnome-terminal.

Then you login as root su - it will prompt you for the root password, enter that and press the enter/return key.

Now navigate to the HDA directory where backups is supposed to be cd /var/hda/files/

List the folders in the files directory ls go ahead and make the backups directory because it is not there. mkdir backups

Again list the folders but show the permissions ls -l

You will see that the folder backups is not accessible to the average user so you have to change the owner and group using CHOWN.
chown user:group backupswhere user is the Fedora user you are using with AMAHI and the group is what you also setup, most likely users.

Now you can navigate to the directory in Nautilus, right click on the backups folder and change permissions to allow read and write so that backups with Ubuntu Simple Backup and Windows 7 built in utility will work. I am sure you can do that on the command line with chmod as well but I am not the best with that command.

Backups setup this way are working wonderfully and I am very pleased thus far with AMAHI.