Latest posts


"run-parts: /etc/cron.daily/logrotate exited with return code 1"

Recently I got nullmailer working on my home server - and along with it working CRON logs filling my inbox. Tracking these issues down will often leave you in unexpected territory. I'll write up each journey one at a time.

First up is a very brief email from logrotate that greets …


nullmailer: The ultimate home email not-server

Send email without sendmail server via nullmailer and a gmail account.


Signal to noise - wrapping custom scripts for errors

Took a shortcut on this one. is a hacky script that has grown over the years to keep some legacy interdependent services running. It outputs all sorts of useful information that is useful when something goes wrong [and more hack needs to be input into the script]. But …


Dockerized Gogs git server and alpine postgres in 20 minutes or less

How I pushed this blog to a dockerized gogs server.


How to log php requests to logstash in json

With a little help from rastro in the #logstash IRC channel I got php to to log in to json and logstash to parse out the timestamps. Like this:

{ "mem": 786432, "sec": 0.001, "cpu": 0, "why": "/test.php?test=4", "what": "/var/www/test.php", "who": "-", "when": "1454100567" }

Set …


Compile ossec with libzmq support

I've had to rebuild ossec-hids with zeromq twice now on two different architechtures - Ubuntu 10.04 32bit and 14.04 64bit.

I figured I ought to at least reformat my ~/.bash_history file and call it a blog post.

Install dependencies

apt-get install \
  build-essential autoconf automake autogen \
  libtool pkg …


Mirroring ppa repos with reprepro and fixing Not Invented Here

Use reprepro to mirror 3rd party repos


My journey into the SaltMine to keep nagios fed with check_mk.

Periodically mine check_mk_agent output on minions and use it for icinga/nagios checks.


pxz - Parallelized LZMA compression

pxz - Parallel LZMA compression


UNIX Comfort Food

Reference dotfiles for working in new environments