Pi Zero Plan
I've been wondering what to do with my Raspberry Pi Zero, and didn't think I'd come up with an idea for a few months. Like most things, it's not necessarily a good idea to go looking for a use for it: wait until a use suggests itself.
Anyway, I'd seen a project where someone had turned a Zero into a mobile phone. I kid you not. It didn't have a touch screen, but it was great for receiving calls and SMS text messages, and the fact that it looked like it was home-made has that nerdy appeal. I decided that maybe, one day I'll do that, but not this year.
The Project
I decided in the end to go for something that was outwardly less ambitious, but for me was just as useful yet push the Zero and test its limits. As with all great arch-villians, I began to lay out my plans in a structured manner, and I really did start to feel like an arch-vllian when I realised what I was going to put my poor Pi Zero through. Still, with the proper training (read: correct software properly configured) I felt that this under-powered computer-on-a-card that has less working memory than my MP3 player might actually be able to do it. There was only way to find out. Actually, three if you add in Pi social media groups and the official Pi forums, but where's the fun in that?
- install a lite operating system, such as DietPi
- configure SSH because a GUI is too heavy and we need a way in
- attach the Zero to ethernet via USB because I don't want to turn WiFi on
That may seem odd, but I don't like WiFi. On the other hand, ethernet over USB is going to draw 280mAh. I'll see how it goes.
- Add a powered USB hub to increase the Zero's one port to seven
- Add on an external drive that has been laying idle and is expendable (because stuff happens)
- Copy to it the local copy of my website
- Launch and configure Apache web server (reducing worker threads from 250 to 25)
- Test webserver is working
The Zero should be able to cope with Apache and PHP, but with only 512Mb of memory, this could be a point of failure. Even if I can't run Apache+PHP, we have a copy of the website on the hard disk, and that'll be important later on.
- Install the two cron jobs that fetch data from NASA servers and updates the local and public websites
- Install and configure the NAS (network-attached storage) software
the NAS software allows the Zero to manage the attached drives and make them visible to any other computers on the network. Initial testing will be with the single half-terrabyte drive I attached earlier. If everything is working fine, I can move all the other external drives over to the Zero. It will then be managing more than 8Tb. As a bonus, my desk will be less cluttered and the morass of cables I have to contend with will naturally tidy themselves up somewhere else.
I could go further and turn the Zero into a PiHole. If you're unfamiliar with this, you basically turn it into a DNS server and route all internet access through it by simply setting it as the DNS server in the network configuration on the other machines. Once it effectively become the gateway, it can block adverts - which is the whole point of of PiHole. Anyway, that's a decision for the future.