Cloudlog on a RPi zero w
As many will testify. I’m not that bright when it comes to clever computer stuff. I can follow instructions quite well and normally this gets me by. So I thought for December I would set myself a challenge of setting up Cloudlog (A really nice looking logging application from Peter 2M0SQL). Only I would be putting it on a Raspberry Pi zero w, without a safety net…or any knowledge of sql, php or any other such acronyms. Here’s what happened.
First things first – You need a LAMP server.
A LAMP server (Linux, Apache, MySQL, PHP) is the thing that will run Cloudlog. We’ll have the Linux part because we’re going to use the normal Raspbian Lite image for our RPI zero w. Apache is installed, as is MySQL and PHP. So first things first. This post is like a nice meal, you’ll not be having bread first, just the starter. Just don’t rush it.
Starter
Do you have a RPi zero w? – If you struggle to find one then use a nice search engine that doesn’t follow you round with a notepad checking on what you’re up to. Perhaps buy from an independent retailer or support your local Pi shop, it might cost a couple of quid extra but you can feel smug about it.
- Have you got the latest Raspibian lite image? If not download it here
- Is is burnt to a suitable micro SD card? I use Sandisk class 10 ones as they seem to be quickest and reliable enough. Try your high street. If not try and support you local Pi shop. This will be the OS ready to go.
- Have you connected to the internet using the command line? it’s pretty easy really, just use this guide.
- Have you enabled SSH on your RPI zero w? RPi headquarters can help again.
- Do you know the ip address of your RPi zero w? in the command line just type.
hostname -I.
It will spit out your ip address. For example mine is 192.168.1.113. Make a note of this you’ll need it - Have you logged into your RPi zero w using SSH? Section 4 will help you here
Main Course
So I was really comfortable with the starter. It wasn’t too heavy and just got me feeling a bit peckish for some more. This is where I was a bit uncomfortable and thought that I may have bitten off a bit more than I could chew. But it all worked out nicely in the end.
Installing the server
I followed this guide. I believe that it is de rigueur to caveat this part with some statement that ‘your mileage may vary’ or some such waffle. It might, but if this guide is wrong please shout up and I will correct it. It worked for me but it would be a lot easier if it worked for everyone. You’ll do some straightforward and not so straightforward stuff.
- Make sure everything is up to date
- Install Apache & do a bit of tidying up
- Install PHP
- Install MySQL & do a bit of detective work
- Setup FTP
Everything seems to go well until you hit part 4 where something goes a bit wonky with permissions. I spent quite a bit of time on this and found out that the permissions on the default myphpadmin account weren’t up to scratch and there is a bit of jiggery pokey to do. This should sort it.
Get yourself into MySQL and change the users
From what I could gather the default user does not have enough privileges to do anything, nor does it have access to the users tab in myphpadmin to create a new one. We have to go into MySQL and create
mysqladmin -u root password 'password'
Log in to MySQL
mysql u root
Then do the following. I think I understand, you create a new user using the GRANT command
GRANT ALL to 'username' @ 'localhost' identified by 'password';
where believe it or not the ‘username’ and ‘password’ are exactly that, but for a new user. We’ll use this later
Install Cloudlog
This bit is dead easy. The Cloudlog wiki is exactly what you need. I won’t repeat it here. So for me I downloaded the files from the GitHub page, unzipped them and then uploaded them with an FTP program (Filezilla is popular) to the /var/www folder in the RPi.
Go to your web browser and type in the url you got earlier when you did the hostname -I (Something like 192.168.1.113) only add /install at the end, so for completeness is should be
192.168.1.113/install
Up pops a dialogue. Fill in your details and you are away.
Note: I mucked about a few times when I was sorting out privileges and ended up forgetting the username and password, but the dialogue was good enough to me and I just re-entered everything and it went the second time.
You can now log in as the guest account m0abc which is notes at the bottom of the dialogue.
Dessert
There are a few things to do to get everything ship shape. Firstly delete the demo account and put in your own. Then upload an adif of your existing log (should you have one)
Delete account and create your own
Really easy Admin > Users
Create yourself and give yourself the admin rights
Delete m0abc
Done
Upload adif
So, it turns out that not all adifs are the same. The header in the example below is not to the right format
Whilst this is
Note the ‘#’ at the beginning of every line in the header. If you are going to upload an adif this needs to be checked
Sitting in a comfortable chair and snoozing
I didn’t find this nearly as daunting as it first looks. There is plenty of information on the Cloudlog wiki and to be honest the only hard bit was sorting out the permissions. You don’t need to be an expert in computering. I now have a log I can access on my Linux laptop, Tablet and phone. If I was really down with the kids it wouldn’t be hard to have it web based (I think that can be done for you by MagicBug).
I would say that you’ll probably need a couple of hours to do it but the reward is a good looking, simple to use log that is agnostic to OS.
Give it a go, if any of the instructions are wrong, can be made better or are glaringly stupid because they’ll steal your soul (or sole if you’re not looking) then let me know and we can make this post really handy.