Eleven bash Tips You Might Want to Know

Here are some tips that might help you be more productive with bash. 1) ^x^y^ A gem I use all the time. Ever typed anything like this? $ grp somestring somefile -bash: grp: command not found Sigh. Hit ‘up’, ‘left’ until at the ‘p’ and type ‘e’ and return. Or do this: $ ^rp^rep^ grep … Read more

Learn Bash Debugging Techniques the Hard Way

In this article I’m going to give you a hands-on introduction to standard bash debugging techniques. In addition, you’ll learn some techniques to make your bash scripts more robust to failure. This article uses the hard way method, which emphasises hands-on-keyboard work to embed the learning. You’re going to have to think and type to … Read more

Why Are Enterprises So Slow?

tl;dr In this article I want to explain a few things about enterprises and their software, based on my experiences, and also describe what things need to be in place to make change  come about. Have you ever found yourself saying things like: Why are enterprises so slow? How do they decide what to buy? … Read more

Anatomy of a Linux DNS Lookup – Part IV

In Anatomy of a Linux DNS Lookup – Part I, Part II, and Part III I covered: nsswitch /etc/hosts /etc/resolv.conf ping vs host style lookups systemd and its networking service ifup and ifdown dhclient resolvconf NetworkManager dnsmasq In Part IV I’ll cover how containers do DNS. Yes, that’s not simple either… Other posts in the series: Anatomy of a Linux DNS Lookup – Part I Anatomy of … Read more

Anatomy of a Linux DNS Lookup – Part III

In Anatomy of a Linux DNS Lookup – Part I I covered: nsswitch /etc/hosts /etc/resolv.conf ping vs host style lookups and in Anatomy of a Linux DNS Lookup – Part II I covered: systemd and its networking service ifup and ifdown dhclient resolvconf and ended up here: A (roughly) accurate map of what’s going on Unfortunately, that’s not the end of the story. There’s still more things … Read more

Anatomy of a Linux DNS Lookup – Part II

In Anatomy of a Linux DNS Lookup – Part I I covered: nsswitch /etc/hosts /etc/resolv.conf ping vs host style lookups and determined that most programs reference /etc/resolv.conf along the way to figuring out which DNS server to look up. That stuff was more general linux behaviour (*) but here we move firmly into distribution-specific territory. I use ubuntu, but a … Read more

Anatomy of a Linux DNS Lookup – Part I

Since I work a lot with clustered VMs, I’ve ended up spending a lot of time trying to figure out how DNS lookups work. I applied ‘fixes’ to my problems from StackOverflow without really understanding why they work (or don’t work) for some time. Eventually I got fed up with this and decided to figure … Read more

A Docker Image in Less Than 1000 Bytes

Here it is (base64-encoded): H4sICIa2A1sCA2IA7Vrrbts2FFYL7M9+7QUGGNyfDYhtkuJFFLAhWZOhBYJmaLMOWBAEFC+xVlkyJLpYEBjdY+0l+k6jfGvqtkEWp2qD8TMg8vAqnsNzDg9lQhhmEjHDhY4zgWJBBUQJ5ZnCGAubMUQMyhJqoRRMJxYbo7Q2CedYxlQO/myqMroeEEHICIngApspxohEKI4h5DHmGEUQQw7jqAejDjBtnKz9q2w7zubi7gkugazVKHdGuWltQArkWDMCdoCqSpufg/QSPK4aV8pxW+nL96uxzMu39G+NqRe5PeekGj13Oi9BamXRmCtl1dS9X2jqel147C7W+aOJKd8dZ04dlcqsSw7KVyA9Ab/uHT/+cTht6mFRKVkMmywv0yv0mnxbMc8sSP8Apzvg0ViDtJwWxQ54Mpbny5W9qIrp2DSrmt+r+mVenu/ny+UelK6+mFR56VYtjsqfp3mxHupQZqZYdp/NGeo850x99r9j7QloyWEz8kvpK//47vuymvzQ29vf79m8MKnIaIa8bUmwRdByw6TKREIoIzE3xBrjrY7MGDUilomQ3GrNrFaIKqSZ4lkvL3tD12sn/IQCrI10xtcC7C1kH9I+xseQpYilRAwoZ5AI9IcfWFfqpRfzK1M3eeUZDRAfQDGAfc/jHTDKG1fVXiInlzcfctnwLPP9Vszs9VXvUzFy5jlZV5WzTbtN3cWkZWkhL/yS2gXm1p7lumkl24wkpv51FbYcU0EZy7SV0ucEZowkiCjvLbAVikCaGUqhyjT0c0Lj/YrElmmSWANOZ7MooHPwRCiLRaJEzBXKFGTCy49lUHNKjEigVdD6H4uTzPj9wzDCSawU0TQT2ujhjVwjgZzSj/n/eX7D/xPm/T8N/v/Ll/+Lg2fPnxw93eL85xFvyB9Rn4TzXwdAAxiMYLD/t9f/7eM/xDja1P+YBf3vKP7L2+PnttsA/IfjcQiE7nkgdH18Ey4O7pjdH7ygmX0p9n8eFA5aG3pb+0/eP/9jzFmw/13AdTBHK3/OPx7/Ic4X8qecQ9K244QG/98JXh8c/vLwwYM1/TD6KWqpv6LdOb37gT67URKterTpVxu1V9PXq3lW1d8skn++9Y83f4cDeEBAQMBnwliWuTWNu8l33G38/3X3fzGk79wFQ4S4Lwr+vwOcXIJHy4ANkLv4L4APcJ6ZSXUsz+efh1xaSOf3VxstHS6+H/nSu4s6wOns9OugxrdG7WXV5K6qc9NEn0n/ESab+s9o0P+O7v9ce1WzVNI7uAiczYI6BgQEBNwD/AvqV/+XACoAAA== How I Got There A colleague of mine showed me a Docker image he was using to test Kubernetes clusters. It did nothing, just starts up as a pod and sits there until you kill it. ‘Look, it’s only 700kb! Really quick to download!’ This got me wondering what the … Read more

Autotrace – Debug on Steroids

Autotrace is a tool that allows you to debug a process and: View the output of multiple debug commands at once Record this output for others to review Replay the output All of this is done in a single window. You can think of it as a realtime sosreport or just a cool way to learn … Read more