Benjamin Cane

A Systems Architect writing about Linux Systems Administration
Picture of Benjamin Cane
Benjamin is a Systems Architect working in the financial services industry focused on platforms that require Continuous Availability. He has been working with Linux and Unix for over 10 years now and has recently published his first book; Red Hat Enterprise Linux Troubleshooting Guide.

In addition to writing about Linux; Benjamin is the creator of Automatron, an infrastructure monitoring and automated remediation application used to create self-healing infrastructure. Benjamin has also spoken at SaltConf 2014 where he presented; Using SaltStack in High Availability Environments.

Latest Articles

Using salt-ssh to install Salt

Using SaltStack's ability to run agentless over SSH to install the salt-minion agent

Creating a swap file for tiny cloud servers

What is swap, and how to use a swap file to add memory to low memory cloud servers

Create self-managing servers with Masterless Saltstack Minions

Using Saltstack's Masterless Minion architecture to create self-managing infrastructure

Using Travis CI to test Docker builds

Walk-through on getting started with Travis CI and how to use Travis CI to test Docker builds

Getting started with Docker by Dockerizing this Blog

This article covers the basic concepts of Docker and how to Dockerize an application by creating a custom Dockerfile

Preventing duplicate cron job executions

This article will show both BASH code and utilities that can be used to prevent a cron job from having multiple running instances

Building Self-Healing Applications with Saltstack

This article will explore creating an application that detects errors and corrects them by integrating Saltstack's API

A Quick and Practical Reference for tcpdump

This article is a quick and practical reference for tcpdump, it covers the basics and dives a little bit into advanced usage. This article should cover everything a systems or network administrator needs to get started and troubleshoot issues quickly

Understanding Exit Codes and how to use them in bash scripts

When writing a script that calls other commands, how do you know if they were successful or not? The answer is exit codes, exit codes are important and this article describes how to use them in your scripts and understand them in general.

Books I've Written

Red Hat Enterprise Linux Troubleshooting Guide

In this book, you begin with simple troubleshooting best practices and get an overview of the Linux commands used for troubleshooting. The book will cover the troubleshooting methods for web applications and services such as Apache and MySQL. Then, you will learn to identify system performance bottlenecks and troubleshoot network issues; all while learning about vital troubleshooting steps such as understanding the problem statement, establishing a hypothesis, and understanding trial, error, and documentation. Next, the book will show you how to capture and analyze network traffic, use advanced system troubleshooting tools such as strace, tcpdump & dmesg, and discover common issues with system defaults.

Finally, the book will take you through a detailed root cause analysis of an unexpected reboot where you will learn to recover after an unexpected system failure.

Purchase this book