Printing tape drive serial numbers
While automating a process this week I needed a way to get the serial number off a batch of tape drives. At first I thought I could retrieve this information through /sys. But after a bunch of poking around with cat, systool and udevadm I realized I couldn't get what I want through /sys. One such failure: If I can't get the serial # through /sys I can always poke the drive directly, right…
$ read more →Creating happy little block devices with UDEV
I'm a long time admirer of Bob Ross and the amazing paintings he produced on his hit tv show the joy of painting. I'm equally a fan of udev and the power it places in administrators hands. While Bob painted amazing clouds, seascapes and mountains with a swipe of his brush I'm able to make /dev just as beautiful with a few keyboard strokes (I guess that makes my keyboard my easel). This past weekend I decided to clean up and automate the device creation process on several of my database servers…
$ read more →Using docker to build software testing environments
I've been on the docker train for quite some time. While the benefits of running production workloads in containers is well known, I find docker just as valuable for evaluating and testing new software on my laptop. I'll use this blog post to walk through how I build transient test environments for software evaluation. Docker is based around images (Fedora, CentOS, Ubuntu, etc.), and these images can be created and customized through the use of a Dockerfile…
$ read more →The subtleties between the NXDOMAIN, NOERROR and NODATA DNS response codes
This past weekend I spent some time troubleshooting a DNS timeout issue. During my debugging session I noticed some subtle differences when querying an A and AAAA record with dig: When I was interpreting the results I was expecting dig to provide a response code of NODATA when I asked the DNS server for a resource record that didn't exist. Obviously that didn't happen. This led me to ask myself what is the technical difference between NODATA, NOERROR and NXDOMAIN…
$ read more →Locating WWPNs on Linux servers
I do a lot of storage-related work, and often times need to grab WWPNs to zone hosts and to mask storage. To gather the WWPNs I would often times use the following script on my RHEL and CentOS servers: This produced consolidated output similar to: While doing some research I came across sysfsutils, which contains the incredibly useful systool utility. This nifty little tool allows you to query sysfs values, and can be used to display all of the sysfs attributes for your FC adapters: This output is extremely useful for storage administrators, and provides everything you need in a nice consolidated form. +1 for systool!
$ read more →