And not the one you thought it was…
Have you ever wrestled with a problem, spending hours and days getting nowhere? Where what ever solution you come up with just wouldn’t work?
This post is about a recent example of my own making.
Happily the consequences were not serious but it was a sharp reminder of the need to troubleshoot systematically.
FROM THE START
I have a small home network which allows a variety of devices to access shared printers. The issue was that my old workhorse HP P1005 mono laser has no networking capability.
I didn’t want to upgrade. After all, it was doing all my mono printing without a murmur, and all for about 0.2p per page using eBay sourced toner cartridges.
And it seemed wrong to throw away something perfectly functional just because I wanted to print from my sofa.
So what were my options?
Initially I bought a couple of cheap TP-Link printer servers, forgetting the golden rule of “buy cheap, buy twice“.
That lesson learned I still baulked at the idea of buying a print server costing rather more than a replacement printer.
However, while researching print servers I kept coming across articles on using a Raspberry Pi as a cheap and reliable way of sharing USB-only printers over a a home or office network.
A RASPBERRY WHAT?
For those who haven’t come across this wonderful devices yet, a Raspberry Pi is fully fledged computer on board about the size of pack of playing cards.
It runs a version of the Linux operating operating systems optimised for its hardware from a standard SD card. Happily an SD card with a self-running installer is widely available for a few pounds.
While initially put of by the need to input quite complex command using a keyboard (none of your windows “click to install” here!) I soon realised that most could be copied and pasted from examples on the internet.
Sourcing a third generation raspberry pi complete with self-installing SD card with for less that £25 including postage was painless and happily I keep a cheap USB keyboard and mouse in my spares box.
Hooking everything up and connect the Pi to my desktop monitor saw me up and running with a fully fledged Linux mini computer in about 20 minutes.
The basic Linux installation doesn’t know how to talk to a windows computers but after installing and configuring SAMBA and CUPS I was up and running.
I claim no credit here. Everything was done by following freely available guides available on the internet, many specifically including the required commands that can be copied and pasted into the Linux command shell.
So a big thank you to those individuals who make their expertise and software available to you and me free of charge. Respect.
PRIDE BEFORE A FALL?
This set-up worked well for over year. I even learned how to install some software to enable me to access the Pi remotely.
This meant that I could see what it was doing without having to hook up a monitor and keyboard. Nice.
This was a big improvement but again the guides from the internet were invaluable.
Then, in a fit of enthusiasm, I decided that I wanted to use the Pi to share my media collection across the network.
AND THE WINNER WAS…
Internet searches showed a number of option but I settled on the Plex media server software, mostly because it is accessed and configured through a web browser.
Initially every thing seemed to go well. I worked through the various installation steps, dutifully backing up the SD to my computer after each step. Remember this for later.
As the installation proceeded I was plagued by the Pi’s SD becoming corrupted. Restoring the back-ups helped but it was as frustrating as the print server installation had been easy.
HOW NOT TO TROUBLE-SHOOT
I knew that it had run reliably in the past as a print and file server, so it has to be the Plex stuff, mustn’t it?
After all that was the only thing that was different. As we’ll see further on, this wasn’t actually true, but in my rush to get an answer I hadn’t take the time to properly understand what had changed.
After literally hours of searching Plex and Raspberry Pi forums I could find no references to Plex causing SD corruption. Nada. Nix, Nothing. Not a sausage.
AND THE ANSWER…
Entirely by chance I fell over a post discussing the options for shutting down a Pi. Tucked away towards the end was a note that failing to do this could cause SD corruption.
Alarm bells immediately rang.
I know not to power off a windows computer but, in the absence of an on/off switch on the power supply, had fallen into the trap of just unplugging the Pi.
BUT WHY ONLY NOW A PROBLEM?
Before installing the Plex software I only turned it off once, just to back up my nicely configured set-up. After that it sat there doing it’s thing.
Because the Plex installation required a number of changes to the existing installation I did it in stages, carefully backing up the SD card after each installation.
And guess how I turned it off? Yes, I pulled out the power cord. With hindsight I now know that the unit could survive the occasional unplugging doing it repeatedly was too much. Doh.
Luckily I was able to erase and reformat the SD cards and restore the saved image, so all it cost me was some time. And my professional dignity…
SO, WHAT DID I MISS?
The big miss was not sitting down and listing out what had changed. I had my smoking gun and that was what I had pursued.
Researching the possibility of the Plex installation causing the problem was reasonable. However, not also doing a more general search on, say, “rp3 sd corruption” was just dumb.
AND THE LESSON IS…..
The lesson is this: Just because you have a smoking gun doesn’t exclude other possibilities This applies in business, just as much as in technical trouble-shooting.
Not convinced? Then consider this often heard cry of managerial frustration: “If I’ve told them once I’ve told the a thousand times”.
Do you think the speaker has solved the right problem with their management approach?
It would be great to hear some of your examples about solving the wrong problem.
Just leave a comment below.