"A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects." (Robert A. Heinlein)

Sunday, 31 December 2017

Saturday, 30 December 2017

Backing-Up Your Data With Raspberry Pi

Among information technology bad practices not backing-up your data is the one you are going to regret more as something goes wrong. For too many years I’ve been relying solely on the good health of my disk drives, that means I was relying mostly on good luck, and on manually copying data, mostly photos and videos, on different supports. I decided so to buy myself a bigger disk drive with the sole purpose of keeping a backup copy of my data.

Hardware set-up

First things first, I bought an external 2TB USB disk. The disk size is enough to backup my 1TB NAS disk and other data I actually keep on the Raspberry Pi server or the desktop PC. More importantly the disk is externally powered since the Raspberry couldn’t power it by itself.
I formatted the , with the XDS file-system, by using the tool provided with my NAS disk, after attaching the new disk to the NAS spare USB port. This step is not strictly necessary but it will allow me, in future, to share the backup disk just by connecting it to the NAS USB port.
I then connected the backup disk to the Raspberry Pi 3 and configured the /etc/fstab file in order to mount it on start-up
/dev/sdb1 /media/backup xfs rw,defaults 0 0


Software set-up: rdiff-backup

While I was looking for a backing-up software solutions I was mostly thinking to some directory mirroring tool like RSync but, like often happens, I stumbled in a more complete solution when I did read this page describing a backup system based on Raspberry Pi and rdiff-backup.
Rdiff-backup is a command line based backup tool, it provide all basic backing-up features like differential backups or time based restore. More importantly, to me, it’s based on standards tools like Rsync directory mirroring and tar archives, meaning that archives are easily readable without the need of rdiff-backup itself.
I installed rdiff-backup with apt-get tool:
sudo apt-get install rdiff-backup

Then created some target folder in the backup drive
sudo mkdir /media/backup/public
sudo mkdir /media/backup/nas
sudo chown pi:pi /media/backup/public/
sudo chown pi:pi /media/backup/nas/

Then I manually started the initial backup, knowing the operation was going to take some time I started a independent shell session with the screen command.

screen
rdiff-backup --exclude /media/public/BTdownload /media/public/ /media/backup/public/

The backup command just needs source and destination folders path, many optional switches are available like the one I used, “--exclude”, which exclude from the backup process some sub-folder.
Once the initial backup completed successfully I used the crontab command to schedule the backup command.
crontab -e
Since most of backed-up data are photos and videos I produce during week-ends I scheduled it weekly ad Tuesday (Monday is already SD-card backup day)
0 5 * * 2 rdiff-backup --exclude /media/public/BTdownload /media/public/ /media/backup/public/

Some notes on performances


The initial backup of my photos and videos collection, about 300 GB, took most of the day to complete. The poor performance is mostly because I keep my data on a Samba share. Rdiff-backup documentation discourages backing up networked disks through in favor of the better optimized SSH protocol, unfortunately my NAS disk doesn't support this option. Not a big problem in my case anyway, because future differential backups will need less time, of course, and the backup process will be performed automatically between two always-on devices.

Saturday, 23 December 2017

Thursday, 23 November 2017

Blog Birthday Nine

One more year of lazy blogging is passed. Looking back to this year I must say I have no excuses for writing less than one post per month. Far more better looking forward, I'll try doing something more next year: I have two Raspberry PI installations, at the moment, which are attracting my interest more of the "flatter" desktop computing world. So I hope you'll find something more interesting on this blog next year. Stay tuned ...

Sunday, 5 November 2017

Upgrading to Ubuntu 17.10 (Artful Aardvark)

It's some time I don't upgrade my desktop computer, I must reckon I enjoyed the relative stability of using a LTS distribution and didn't fell the need of a twice-a-year system upgrade. Unfortunately my PC suffered of a system crash, probably because of some faulty hardware, just while updating with the result of corrupting the installed operating system beyond my capability of repairing it.
I so downloaded latest Ubuntu distribution release and started the good-old installation procedure.

No more Ubuntu-gnome long live to Ubuntu (Gnome)

I’ve been a Ubuntu-Gnome user for a long time, so I’ve been quite pleased to learn Canonical decided to stop Unity support and adopt Gnome-Shell as primary desktop manager. I so went for downloading latest Ubuntu ISO image. Once finished I prepared a bootable USB disk using Unetbootin tool, then I restarted my PC.

Installation

I started my computer from USB disk then selected the “Try Ubuntu ...” option instead of starting directly the installation program in order to collect screen-shots more easily.
After usual language and “third party” option selection I came to the installation type selection where I choose to upgrade my 16.04 installation.