4 novembre 2015

How to build a cheap NAS for rsync backup with Raspberry Pi

(In my poor English at bottom)

"Il backup è Vita, il Backup è cosa buona e giusta"

Esistono molti sistemi di backup, dal semplice copia incolla su una penna usb alle soluzioni cloud di big data.
In ambiente domestico  si stanno diffondendo i NAS per poter salvaguardare la propria vita digitale fatta, ormai, di centinaia di GB di foto, film, ebook, files musicali e documenti.
Stiamo parlando di una spesa minima di 150 € per il NAS a cui aggiungere la spesa degli Hard Disk, un NAS a disco singolo da 1 TB può venire a costare ben più di € 200.

Ma volete mettere il piacere di far da sé?
Ora, a chi è dedicata questa guida?
Non solo agli utenti di GNU/Linux BSD eccetera.
E' dedicata anche agli utenti di windows che vogliano cimentarsi un po' con linux e che, tuttavia, non abbiano nessuna intenzione di abbandonare Windows sul loro PC:
questo NAS funzionerà anche per voi!

Quali competenze vi servono?


Competenze? 

Beh, saper instaurare una connessione ssh non guasta, saper usare un editor di testo tipo vim, nemmeno.
Se vi installate una classica ubuntu in Virtualbox potreste rapidamente acquisire le necessarie competenze.
Se partissimo da zero in tutti gli ambiti, questa guida sarebbe più lunga per i prerequisiti che per l'argmento principale, quindi, pur non dando per scontato nulla, linkerò delle guide utili ai vari segmenti del nostro lavoretto.

Cosa vi occorre:

Un Raspberry Pi funzionante (ma la guida è valida per qualunque computer con su linux, che so, un vecchio netbook che tenete spento da anni) ed un supporto esterno per il backup, tipicamente un Hard Disk esterno USB, ma, se, ad esempio, avete da salvare solo una ventina di GB di dati, potreste usare una microsd da 32 GB per il Raspberry più che sufficiente anche per il backup.

Il vantaggio di questa soluzione è nella sua completa automazione, economicità (il Raspberry vi costerà attorno ai 50 €, schedina micro SD per il suo sistema operativo inclusa) e nello stimolo didattico per chi si approccia all'universo linux di apprendere e migliorarsi.

Cos'è il Raspberry Pi? Ve lo andate a leggere qui.
Cos'è Linux? Idem, qui.

Per prima cosa: il sistema operativo originale del Raspberry non va bene.
E' troppo pesante ed è difficile ripulirlo dei servizi inutili, tanto vale usare direttamente una versione basica di Debian che potrete scaricare qui (e dove trovate le istruzioni per l'installazione)

Sapete instaurare una connessione ssh dal vostro PC al Raspberry usando putty o, meglio, Mobaxterm?

Ecco qui la guida ufficiale di Raspberry.
Poi, il vostro hard disk esterno deve essere formattato con un file system più digeribile possibile per linux: NTFS di windows funzionerà lo stesso, ma le prestazioni del sistema ne sarebbero degradate, quindi formattate il vostro hard disk esterno direttamente in ext4, ci sono molti tool per fare questa operazione anche da un computer windows.
Andiamo con ordine: siete seduti di fronte al vostro PC con una connessione ssh al Raspberry funzionante.


ssh username@IPdelRaspberry


Quasi tutte le operazioni andranno eseguite come utente amministrativo root, quindi digitiamo:


su root



e inseriamo la password scelta in fase di installazione.




Per prima cosa occorre impostare il fuso orario e la tastiera, ecco i comandi:

dpkg-reconfigure tzdata

dpkg-reconfigure console-data
dpkg-reconfigure console-data
dpkg-reconfigure locales

E' sempre il caso di operare con software aggiornato:


apt-get update

apt-get upgrade

rispondendo Y alla richiesta del sistema di installare eventuali aggiornamenti

Poi è il momento di installare il software necessario ai nostri scopi;

 apt-get install screen vim rsync


Che cosa abbiamo installato?



screen è un programma che consente di lanciare un comando e disconnettersi dal raspberry con la certezza del proseguimento del funzionamento del comando;

vim è un editor di testo (non molto intuitivo nel funzionamento ma da qualche parte si deve pur cominciare)
rsync è il programma di sincronizzazione che useremo per il backup.

il passo successivo consiste nel far riconoscere il disco usb al raspberry. Linux riconosce automaticamente i dischi, ma non effettua, automaticamente, il montaggio di tali dischi sul file -system nelle versioni server come quella installata sul Raspberry.

E' come se voi inseriste una penna usb in un pc windows che non la apre automaticamente.
Inoltre, sempre per fare un parallelo con windows, bisogna fare in modo che il disco montato finisca sempre nello stesso punto del file system, in altri termini che la lettera assegnata da Windows alla pennetta usb resti sempre la stessa anche dopo vari riavvi e ricollegamenti.
Iniziamo a fare sul serio: digitiamo

fdisk -l


E ci ritroviamo di fronte qualcosa del genere:



Disk /dev/mmcblk0: 7969 MB, 7969177600 bytes

4 heads, 16 sectors/track, 243200 cylinders, total 15564800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00027aa3

        Device Boot      Start         End      Blocks   Id  System

/dev/mmcblk0p1            2048      104447       51200    b  W95 FAT32
/dev/mmcblk0p2          104448     1742847      819200   83  Linux
/dev/mmcblk0p3         1742848     1945599      101376   82  Linux swap / Solaris

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes

81 heads, 63 sectors/track, 382818 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x5ba59dda
Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048  1953525167   976761560   83  Linux


Niente paura. 

Il comando che abbiamo dato elenca i dischi del sistema, un po' alla volta si prende dimestichezza, per adesso basti saper che mmcblk0 è la scheda microSD del Raspberry mntre sda è l'hard disk USB.
Ecco, a noi interessa proprio la stringa /dev/sda1 che sta a significare che la nostra partizione ext4 sull'hard disk esterno si chiama, appunto, /dev/sda1.
Manca ancora un pezzo:

ls /dev/disk/by-uuid -alh


drwxr-xr-x 2 root root 160 gen  1  1970 .

drwxr-xr-x 6 root root 120 gen  1  1970 ..
lrwxrwxrwx 1 root root  15 gen  1  1970 0a0e4e5a-7652-402a-89ea-5e524f5f8a37 -> ../../mmcblk0p2
lrwxrwxrwx 1 root root  10 gen  1  1970 6ba8c7e8-5c61-4448-8b73-26175ca6adfe -> ../../sda1
lrwxrwxrwx 1 root root  15 gen  1  1970 972837af-21d7-41cf-9f1e-4a3bb27b87ae -> ../../mmcblk0p3
lrwxrwxrwx 1 root root  15 gen  1  1970 A51D-3FFB -> ../../mmcblk0p1



Vediamo di capirci qualcosa. Avete presente l'sda1 che vien fuori dall'ultimo comando?
E che vuol dire l'ultimo comando?
Chiediamo al sistema di elencare tutte le partizioni presenti elencandole per UUID, ossia quel codice alfanumerico che identifica univocamente le partizioni.
Nel nostro caso: 6ba8c7e8-5c61-4448-8b73-26175ca6adfe
E che ce ne facciamo?
Beh, lo usiamo per dire al sistema che sda1 è identificato da 6ba8c7e8-5c61-4448-8b73-26175ca6adfe sempre e per sempre, anche se stacchiamo l'hard disk o riavviamo il sistema.
Creiamo una cartella in cui il nostro bravo raspberry andrà a montare l'hard disk esterno:

cd /media/   Ci spostiamo nella cartella /media/
mkdir 1tb  creiamo la cartella 1tb
chown -R user:user 1tb/   diamo all'utente il possesso della cartella
chmod -R 755 1tb/  assegnamo i permessi di scrittura e lettura a questa cartella


Ora, un attimo di attenzione. 

1tb è una cartella vuota, di proprietà dell'utente pi in cui tutti possono leggere e solo pi può scrivere.
Tutto qua.


E il nostro sda1 con tutto quel po' po' di codice lungo appresso? 

vim /etc/fstab

#                            
proc            /proc           proc            defaults                0       0
/dev/mmcblk0p1  /boot           vfat            defaults                0       0
/dev/mmcblk0p3  none            swap            sw                      0       0
UUID=6ba8c7e8-5c61-4448-8b73-26175ca6adfe       /media/1tb      ext4    defaults        0       2

Ecco qua dove andiamo ad inserire il nostro codice che abbiamo ricavato dal comando ls /dev/disk/by-uuid -alh, nella riga in grassetto.
Ora, usare vim non è semplicissimo, si può adoperare al suo posto nano, un altro editor un po' meno ostico, ma alla fine della fiera si deve aggiungere al normale file fstab quella riga.
Ovviamente il codice sarà diverso per ogni partizione (altrimenti che identificativo unico sarebbe?) e bisogna vedere come avete chiamato la cartella in cui andare a montare il disco esterno.
Una volta salvato potete uscire e 'montare' la nuova partizione nel sistema con il comando

mount -a

potete verificar il successo dell'operazione entrando nella cartella /media/1tb e verificando lo spazio disponibile nel sistema con il comando

df -h

File system     Dim. Usati Dispon. Uso% Montato su
rootfs          772M  533M    223M  71% /
/dev/root       772M  533M    223M  71% /
devtmpfs        215M     0    215M   0% /dev
tmpfs            44M  224K     44M   1% /run
tmpfs           5,0M     0    5,0M   0% /run/lock
tmpfs           108M     0    108M   0% /run/shm
/dev/mmcblk0p1   50M   19M     31M  38% /boot
/dev/sdb1       917G  270G    602G  31% /media/1tb

In questo caso il disco da 1tb è occupato per il 31%.
Riavviate fiduciosi il raspberry, il disco sarà di nuovo lì, montato e scrivibile.
E ora?
Ora dobbiamo finalmente impostare il nostro sistema di backup a partire dal PC di cui vogliamo fare il backup.
In questa guida, al momento, prepareremo il backup di un computer che usa linux, poi aggiungerò anche una sezione per un client windows.
Spostiamoci, quindi, sul computer di cui si deve fare il backup.
Imposteremo un sistema che, automaticamente, alle 20 di sera, sincronizzerà il contenuto di una propria cartella con il disco da 1tb collegato al raspberry.
Coraggio, il peggio è alle spalle.
Accendiamo il nostro PC linux di cui, ad esempio, desideriamo fare il backup della nostra home.
Apriamo una finestra di terminale e digitiamo:


ssh-keygen -t rsa -C "Raspberry"

non inserire alcuna password quando ci verrà richiesto ma premiamo semplicemente invio.
Cosa abbiamo fatto? Abbiamo generato una coppia di chiavi, per i dettagli suggerisco la lettura di questa guida.

Copiamo la chiave pubblica sul raspberry con il comando

ssh-copy-id -i ~/.ssh/id_rsa.pub username@IPdelRaspberry

e proviamo a connetterci al raspberry senza inserire la password

ssh username@IPdelRaspberry

se non ci viene richiesta la password siamo a posto.

Nella nostra home possiamo preparare lo script di backup:

creiamo il file backup.sh, lo rendiamo eseguibile (esercizio ;) ) e dentro ci incolliamo:

#!/bin/bash

rsync --exclude=".cache" -avrzh --delete --progress --log-file=/home/username/raspberrypi.log /home/username/ -e "ssh" username@IPdelRaspberry:/media/1tb/



rsync è il programma di backup, il parametro  --exclude="lost+found" esclude la cartella .cache dal backup (si possono aggiungere tutte le esclusioni necessarie), --delete cancella i files dalla cartella di backup non più presenti nella cartella sorgente, -- progress visualizza il progresso dell'operazione, poi abbiamo la generazione del log (sempre utile) e la cartella di origine.

Per ultimo,  -e "ssh" username@IPdelRaspberry:/media/1tb/ vuol dire che rsync si collega usando il protocollo ssh col nome utente indicato al raspberry nella cartella /media/1tb/

E come facciamo a farlo lanciare automaticamente ogni sera alle 20?

Editiamo come root il  file /etc/crontab aggiungendo la riga in grassetto allo script:


# /etc/crontab: system-wide crontab

# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command

17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
00 20 * * * username /home/username/backup.sh >/dev/null 2>&1

E questo è tutto.

Ogni sera alle 20, se entrambe le macchine sono accese, il PC automaticamente sincronizzerà la home con il raspberry.

Non aspettatevi grandi prestazioni nel trasferimento dei files, ecco perchè l'ideale è usare questo sistema per il backup notturno magari del classico muletto, un PC a basso consumo che faccia da file server domestico.

PRO:

  • economicità nei componenti e nei consumi;
  • estremamente didattico per imparare ad usare linux;
  • completamente automatico

CONTRO:



  • Se ci si deve ricorare di accendere il PC prima delle 20 non è davvero un backup automatico (ma ne parleremo nella prossima puntata)
  • prestazioni insufficienti
  • recupero files di backup dal disco usb non immediato nè rapido


Sono stato un po' prolisso, sicuramente imperfetto, migliorerò la guida nel tempo e aggiungerò qualcosina anche per windows quanto prima.

Buon backup a tutti







"The Backup is life, the backup is a good and right thing"
There are a lot of backup systems: from a simple  copy and past on an usb pendrive to big data cloud.
In the home environment are spreading the NAS in order to safeguard their digital life made, now, of hundreds of GB of photos, movies, ebooks, music files and documents.
We are talking about a minimum cost of 150 € for the NAS to wich add the cost of the hard drive, a single disc 1 TB NAS can cost well over € 200.
But you want to put the pleasure of doing it yourself?
Now, who to bring this guide?
Not only users of GNU / Linux BSD etc.
It 'also dedicated to Windows users who want to try a little with linux and that, however, they have no intention of giving up Windows on their  PC:
this NAS will work for you too (in the next part of this guide)!
What skills do you need?
Skills? Well, you should know how to establish an ssh connection and how to use a text editor like vim.
If you installed a classic ubuntu in virtualbox you could rapidly acquire the necessary skills.
Starting from scratch in all areas of this guide would be longer for the prerequisites thanb for the beef, therefore, while not assuming anything, I'll link someuseful guides to the various segments of our job.

What you need:


running Raspberry Pi (but the guide applies to any computer running on Linux, say, an old netbook that you hold off for years) and external media for backup, typically a USB external hard drive, but if, for example, you have to save only about twenty GB of data, you could use a microSD 32GB for Raspberry more than enough even for the backup.


The advantage of this solution is in its full automation, cost (the Raspberry will cost around 50 €, Micro SD Card to its operating system included) and stimulating educational for those approaches universe linux to learn and improve.


What is the Raspberry Pi? You'll go read here.

What is Linux? Go here.

First: the original operating system of Raspberry's not good.

It is too heavy and full of unnecessary services (including a graphical desktop), you might use directly a basic version of Debian that you can download here (where you can find also instructions for installation)


You know how to establish an ssh connection from your PC to the Raspberry using putty or, better, MobaXterm?

Here is the official documentation of Raspberry.
Then, your external hard drive must be formatted with a file system can be more digestible for linux: NTFS windows work, yes, but system performance will be degraded, then format your external hard drive directly in ext4, there are many tools to help with that too from a windows computer.

Now you're sitting in front of your PC with a ssh functioning connection to the Raspberry.


ssh username@IPdelRaspberry


Almost all operations will be run as an administrative user root, then type:


su root


and enter the password chosen during installation.


First, you must set the time zone and keyboard, here are the commands:


dpkg-reconfigure tzdata

dpkg-reconfigure console-data
dpkg-reconfigure console-data
dpkg-reconfigure locales

It's bettere work  with updated software:


apt-get update
apt-get upgrade

Then it's time to install the necessary software for our purposes


 apt-get install screen vim rsync


What we have installed?

Screen is a program that allows you to run a command and disconnect from raspberry with the certainty of the continuing operation of the command;
Vim is a text editor (not very intuitive in operation but somewhere it has to start)

rsync is the synchronization program that we will use for backup.

The next step is to recognize the USB disk to raspberry. Linux disks automatically recognizes, but does not, automatically, the installation of such records on file -system versions server as the one installed on Raspberry.
And 'as if you inseriste a USB stick into a Windows PC that does not open automatically.
Moreover, to make a parallel with windows, we must make sure that the disk mounted to end at the same point of the file system, in other words that the letter assigned by Windows to the USB key always remains the same even after several reboots and reconnections.

We begin to get serious: we type


fdisk -l


And we are faced with something like this:



Disk /dev/mmcblk0: 7969 MB, 7969177600 bytes
4 heads, 16 sectors/track, 243200 cylinders, total 15564800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00027aa3


       Device Boot      Start         End      Blocks   Id  System
/dev/mmcblk0p1            2048      104447       51200    b  W95 FAT32
/dev/mmcblk0p2          104448     1742847      819200   83  Linux
/dev/mmcblk0p3         1742848     1945599      101376   82  Linux swap / Solaris


Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
81 heads, 63 sectors/track, 382818 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x5ba59dda
Device Boot      Start         End      Blocks   Id  System


/dev/sda1            2048  1953525167   976761560   83  Linux

No fear. The command we have given lists disks in the system, a bit 'at a time you get comfortable, for now suffice it to know that mmcblk0 is the microSD card Raspberry mntre sda is the USB hard drive. Here, we are interested in just the string / dev / sda1 which means that our ext4 partition external hard drive is called, precisely, / dev / sda1. Still missing a piece:



ls /dev/disk/by-uuid -alh

drwxr-xr-x 2 root root 160 gen  1  1970 .

drwxr-xr-x 6 root root 120 gen  1  1970 ..

lrwxrwxrwx 1 root root  15 gen  1  1970 0a0e4e5a-7652-402a-89ea-5e524f5f8a37 -> ../../mmcblk0p2

lrwxrwxrwx 1 root root  10 gen  1  1970 6ba8c7e8-5c61-4448-8b73-26175ca6adfe -> ../../sda1

lrwxrwxrwx 1 root root  15 gen  1  1970 972837af-21d7-41cf-9f1e-4a3bb27b87ae -> ../../mmcblk0p3

lrwxrwxrwx 1 root root  15 gen  1  1970 A51D-3FFB -> ../../mmcblk0p1

And let's figure it out. 

You remember the sda1 that comes out from the last command?
And that means the last command?
We ask the system to list all partitions by listing by UUID, ie the alphanumeric code that uniquely identifies partitions.
In our case: 6ba8c7e8-5c61-4448-8b73-26175ca6adfe
And what do we do?
Well, we use it to tell the system that sda1 is identified by 6ba8c7e8-5c61-4448-8b73-26175ca6adfe always and forever, even if we detach the hard disk or reboot the system.

We create a folder in which our raspberry will mount the external hard drive:



cd /media/  we are moving in the /media/ directory
mkdir 1tb we create the directory 1tb
chown -R pi:pi 1tb/ give to the user the possession of the directory 1tb


chmod -R 755 1tb/  → let's assign the permissions to the directory

Now, a moment's attention. 1tb is an empty folder, that you own more when everyone can read and write can only pi. That's all. And our sda1 with all the little 'bit' of long code below?

vim /etc/fstab

#                              
proc            /proc           proc            defaults                0       0
/dev/mmcblk0p1  /boot           vfat            defaults                0       0
/dev/mmcblk0p3  none            swap            sw                      0       0
UUID=6ba8c7e8-5c61-4448-8b73-26175ca6adfe       /media/1tb      ext4    defaults        0       2


Here's where we're going to put our code that we have obtained from the command ls / dev / disk / by-uuid -alh, in bold line. Now, using vim is not easy, you can use nano in place, another editor a bit less difficult, but at the end of the fair is to be added to fstab that line. Obviously, the code will be different for each partition. Once saved, you can go out and 'mount' the new partition in the system with the command



mount -a



you can verify the success of entering into the / media / 1TB and verifying the space available in the system with the command





df -h


File system     Dim. Usati Dispon. Uso% Montato su

rootfs          772M  533M    223M  71% /

/dev/root       772M  533M    223M  71% /

devtmpfs        215M     0    215M   0% /dev

tmpfs            44M  224K     44M   1% /run

tmpfs           5,0M     0    5,0M   0% /run/lock

tmpfs           108M     0    108M   0% /run/shm

/dev/mmcblk0p1   50M   19M     31M  38% /boot

/dev/sdb1       917G  270G    602G  31% /media/1tb


In this case the 1tb disc is busy for the 31%. Restart confident the raspberry, the disc will be back there, still mounted and writable. And now? Now we finally set up our backup system from the PC we want to backup. In this guide, at the time, we will prepare to back up a computer running Linux, then add a section to a windows client. Let's move, then, on your computer that you should back up. We will set up a system that automatically at 20 pm, will synchronize the contents of your folder with 1TB disk connected to the raspberry. Courage, the worst is behind us. We turn on our PC linux which, for example, want to back up our home. Open a terminal window and type:

ssh-keygen -t rsa -C "Raspberry"

not enter a password when we will be asked (twice). What have we done? We have generated a key pair, for details suggest the reading of this guide. We copy the public key on the raspberry with the simple command

ssh-copy-id -i ~/.ssh/id_rsa.pub username@IPdelRaspberry

and we try to connect to the raspberry without password

ssh username@IPdelRaspberry

if no password is asked we're ok. In our home directory we can prepare the backup script backup.sh
Edit it with vim, nano or a text editor, then make ite executable (how? A little exercise)

#!/bin/bash
rsync --exclude=".cache" -avrzh --delete --progress --log-file=/home/username/raspberrypi.log /home/username/ -e "ssh" username@IPdelRaspberry:/media/1tb/

Here's our backup script: rsync is the backup program, the parameter --exclude = "lost + found" folder .cache exclude from backup (you can add all the exclusions necessary), --delete delete files from the backup folder is no longer in the folder source - progress shows the progress of the operation, then we have the generation of log (always useful) and the source folder. Finally, -e "ssh" username @ IPdelRaspberry: / media / 1TB / means that rsync is connected using the ssh protocol with the user name indicated in raspberry in the / media / 1TB / And how do we do that launch automatically every night at 20? Edit it as root / etc / crontab and add the line in bold script:


# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
00 20 * * * username /home/username/backup.sh >/dev/null 2>&1

And that's it.

Every night, at 20, if both machines are on, the PC automatically synchronize the home with the raspberry.
Do not expect great performance in the transfer of the files, which is why it is best to use this system for the nightly backup maybe using a classic forklift, a low-power PC to serve as a home file server

PRO:

cheap price for components and consumption
extremely educational to learn to use linux

AGAINST:

recover files from the backup disk usb not immediate nor fast
If you must remember to turning on your PC before 20 is not an automatic backup
poor performance 
I was a bit 'confused, certainly imperfect, will improve the guide over time and add something for windows as soon as possible. Good backup at all

31 ottobre 2015

La Velostazione Dynamo di Bologna: la tana delle tigri

Finalmente, un mese dopo l'inaugurazione, riesco ad usufruire della rivoluzionaria e bellissima velostazione di Bologna.
Sul loro sito potete trovare le informazioni logistiche dettagliate.
Segnalo il bar, la cicloofficina, la possibilità di punzonare la bici e poi, francamente, per un ciclista che deve sempre chiedere permesso, è territorio amico.
Io vi posso raccontare brevemente le mie impressioni.
La velostazione è vicinissima alle stazioni ferroviarie ed al termina degli autobus, a due passi dalla zona pedonale (nei week end) di Bologna.
Come funziona?
Facile, entri con la bici, sorridi, dai il tuo numero di cellulare alla reception e ti arriva subito un sms contenente il tuo codice che funge da chiave per il ritiro della bici.
E nel frattempo ti senti in un Paese normale.
Ah, ovviamente, per 6 ore, il costo è di 1 euro.
Quindi, a conti fatti (il prezzo del biglietto autobus costa tra 1,2 ed 1,5 €), andare in bici in centro a Bologna, costa meno in bici (con parcheggio custodito) che in autobus.
Basta con le lunghe attese ed il viaggiare pressati come sardine.
Dato che, dalla periferia estrema della Città alla Velostazione, in bici ci si impiega massimo mezz'ora (anche considerando le non proprio ideali impostazioni semaforiche per le bici) si fa anche più in fretta che in autobus.
Nnon ci sono più scuse: 
abbandonate il gasolio, riponete il portafoglio e preparatevi anche a cedere centimetri di pancetta.
A Bologna centro non si va in auto nè in autobus, ma in bici.
Comodi e sicuri.





21 ottobre 2015

Linux e Agesci: perchè il Matera 2 partecipò ai primi Linux Day Materani

A quanto pare, anche quest'anno a Matera si terrà il Linux Day, per fortuna.
Sono passati molti anni dal primo che vide me tra gli organizzatori, un evento a cui ho dato il mio contributo su... mandato della Comunità Capi del Matera 2.
Vorrei, quindi, parlarvi del perchè un gruppo Scout dovrebbe impegnarsi per la diffusione del Software Libero tra i propri ragazzi.
"Usare Linux è il modo scout di usare il computer".
Ne parlo da molti anni.
Nel XXI secolo il software entra anche nella quotidianità dello Scoutismo e, se lo scrivente considera lo scouting assolutamente primario  e non si sogna nemmeno di sostituire scarponi bussola e pentolone con un mouse, ma l'uso del software è finito anche negli orologi e fa parte della vita quotidiana così come l'elettricità.
B.P. diceva: non esiste buono o cattivo tempo, ma buono o cattivo equipaggiamento.
Lo stesso vale anche per l'informatica.
Il Software Libero, gratuito, quindi economico, basato sulla collaborazione e l'apertura è una concreta applicazione pratica della Legge Scout.
Quale Capo Reparto approverebbe un campo di reparto fatto in Albergo e Piscina?
Quale Capo Clan approverebbe una Route fatta in auto tra un albergo un Pub ed un Ristorante e l'altro?
Lo stesso vale per il Software.
Ecco perchè i primi Linux Day materani ebbero il contributo di un Gruppo Scout.



Perchè l'educazione dei giovani ad un uso consapevole, libero, aperto, economico e responsabile delle tecnologie informatiche fa parte del DNA dell'AGESCI, vera associazione di frontiera.
Certo, l'impegno Agesci in questo senso è, forse troppo a macchia di leopardo, oscillando tra lo splendido esempio della Route Nazionale del 2014 e l'adozione di soluzioni proprietarie per la gestione della propria infrastruttura di Posta Elettronica.
Ma c'è.
Sono tanti i capi ed iragazzi che riconoscono la perfetta contiguità tra Legge, Promessa e l'uso di Software Libero al post di quello Proprietaro.
Certo, non si deve esagerare. 
Scherzando, spesso affermo che il Software Libero è evangelico, Windows Pagano e i prodotti della Mela, biblicamente, satanici.
Tuttavia, non credo che ci sia nulla di male nell'usare software proprietario per le attività scout. Semplicemente, ritengo che sarebbe meglio che in tutte le attività che coinvolgono direttamente i ragazzi (ad esempio specialità esperto del computer o attività quali Capitolo o Inchiesta) i Capi fossero in grado di indirizzare i ragazzi verso l'uso di software libero anche se non hanno specifiche competenze.
Del resto, il Capo non deve essere competente in tutto, perchè il suo ruolo è quello di educatore, non di istruttore, quindi, non lasciatevi spaventare, saranno i ragazzi stessi ad imparare facendo.
Di sicuro, qualsiasi attività Scout realizzata con software pirata dovrebbe far riflettere tutti sulla serietà della propria intenzionalità educativa.
Sabato 24 c'è il Linux Day.
Anche a Bologna.
Ma credo di avere un impegno ancora più importante per quel pomeriggio: invece di andare al sicuramente grandioso evento bolognese me ne vado a Riunione di Cerchio ad accogliere le Cocci.
Ogni cosa al suo tempo.

20 ottobre 2015

Io e la Turchia, quando l'Amore ci vede benissimo

Sono stato in Turchia due volte.
Non posso certo affermare di conoscere il paese, manco grazie  ho imparato a dire in turco!
Però sono stato in Kurdistan, non mi sono solo limitato a fare un giro per Sultanamet e Piazza Taksim.
Un turista vede molto poco della realtà che lo circonda.
Ma, con un po' di attenzione, qualcosina del cuore della gente vien fuori.
Non sono state tutte rose e fiori.
Nell'interno, dei pastori ci hanno tirato appresso le pietre.
La visita alla tomba di Antioco I mi ha portato in un territorio di selvaggia bellezza in cui mai dimenticherò l'angoscia di una giovane madre che aspettava sul ciglio del sentiero che passasse un autobus mentre teneva in braccio una bambina visibilmente molto malata.
Un territorio, quello, in cui da Ankara mandavano certamente più carri armati ed F-4 che medici ed ambulanze.
Un territorio che si chiama Kurdistan Occidentale.
Brulicante di soldatini di leva armati tra le antichità e i tramonti.
Ma ricordo anche l'ospitalità e la serenità delle cittadine di provincia dell'Anatolia e, poi, in tempi più recenti, durante il mio secondo viaggio, la meraviglia di Istanbul.
Istanbul come paradigma di una Nazione antichissima, amichevole, viva, giovane, giovanissima, attiva.
Ma i mercati, i sapori, il colore del cielo sul Bosforo, le splendide moschee e il sorriso di uomini e donne non possono cancellare alcuni dati di fatto che non sono di per sé spiacevoli.
Solo oscillanti tra l'incomprensibile e l'anacronistico.
La Turchia disconosce completamente il genocidio armeno compiuto dalla Turchia Ottomana all'inzio della Prima Guerra Mondiale.
Disconosce il solo semplice concetto di esistenza di una minoranza Kurda di 15 20 milioni di persone.
Eccetto quado devono essere identificati per bombardarli.
20 anni fa come oggi.
La Turchia è uno Stato Laico ed una Democrazia.
Ma è anche il posto dove ho visto giovanotti venuti fuori da un video di MTV accompagnarsi a ragazze in burka nel centro di Istanbul (e non col velo, proprio con il burka) o, se preferite, la nazione nel cui aeroporto internazionale capita di vedere una bella donna entrare in minigonna nella toilette delle signore per uscirne anche lei in burka (e no, non ero io nel bagno delle signore :) ).
E' la nazione pilastro della NATO nel Mediterraneo (no, sorry boys, non ci fidiamo troppo di voi italiani, come on, avete più pacifinti che monumenti) ma ha sponsorizzato Hamas con la Freedom Flottilla (guadagnandosi 1e54321435 miliardi di punti da parte dei pacifinti italici) e...
Ed ha abbondantemente favorito l'ascesa dell'ISIS per puro calcolo anti-iraniano.
E se c'è stato da sparare non si è fatta scrupolo di sparare sui Kurdi, gli unici a combattere davvero fino in fondo ISIS. E se il nemico del mio nemico è mio amico, beh ...
Ci siamo capiti.
Eppure la Turchia non è un monolite con la faccia di Erzogan.
Come dimenticare la resistenza di Piazza Taksìm ed il martirio dei pacifisti di Ankara e Suruc?
Forse, solo così riesco a spiegare la violenta dicotomia, come quella tra mente e cuore, quando penso alla Istanbul che ho amato, ricca di sorrisi, di giovanile efficienza, affamata di vita, lontanissima da quella grigia e triste descritta da Pamuk in "Istanbul", in cui anche gli anziani custodi delle più piccole moschee in pietra sembrano venire dal futuro, da un Islam fatto di accoglienza e tolleranza.
Contrapposta alla Turchia che di fatto appoggia l'ISIS, che non accetta il solo concetto di responsabilità nel genocidio armeno nè quello di autonomia per le genti curde, reagendo con rabbiosa violenza contro i propri stessi cittadini ma sempre con un levantino sorriso rivolto all'agognata Europa.
Istanbul è più Europa di molte città italiane, eppure mi sento di ricordare ai turchi che è quasi sempre meglio essere ottimi vicini di casa che cattivi conviventi.
La Turchia ha il mio cuore, ma la mia mente resta ai martiri di Kobane, ad una bambina malata in Kurdistan e ai sorrisi di Erzogan sullo sfondo dei tagliagole dell'ISIS e di troppe bombe cadute fuori bersaglio.
E, nella catastrofica situazione che va da Trpoli ad Aleppo, la Turchia, oggi, è parte del problema. Non della soluzione.




8 ottobre 2015

Il Re Travicello e lo stipendio di un assessore

Prendo spunto dalla caduta del Sindaco di Roma per esprimere il mio punto di vista sulla remunerazione dei politici.
Ho un impiego.
Ho una laurea
Ho certe competenze ed esperienze
Assumiamo (per assurdo) che un Comune/Regione voglia offrirmi un incarico amministrativo legato a queste mie competenze.
Che so, assessore all'innovazione.
"Quanto devo essere pagato?" 
Non credo che sia la domanda più importante.
E nemmeno
"Per cosa devo essere pagato?"
Anche se la risposta: "per fare bene il tuo lavoro di amministratore" sarebbe comunque insufficiente ed incompleta.
No, credo che la domanda più importante sia:
"Mi posso permettere di fare l'assessore?"
Chiariamoci.
Io ho un lavoro ed una carriera.
Se accettassi di fare l'assessore full time per più di qualche mese perderei il lavoro.
E poi?
In altre parole, devo essere pagato a sufficienza non tanto per essere incorruttibile, come una specie di vaccinazione fatta di iniezioni di liquidità monetaria, ma devo essere anche pagato per il danno che subisce la mia carriera professionale.
Quindi, molto.
E chi vi dice il contrario, mente sapendo di avere le spalle coperte.
Avete notato che gli anziani miliardari in politica sono quelli che più battono il tasto sulla povertà?
Sia dei poveracci che dei loro seguaci?
Poi, scusatemi, ma se prendi uno con questo Curriculum  (o quest'altro) e questi titoli di studio e lo metti ad occuparsi di scelte strategiche e questioni tecniche avrai un certo output sicuramente diverso da un CV fatto di studi portati a buon fine (magari scientifici) ed esperienze lavorative nel settore privato di alto livello.
Ma non è poi questo il punto.
Il punto è che, al termine del loro mandato, se i titolari dei CV di cui sopra si attenessero alla loro stessa dottrina, nell'Italia (Mondo Occidentale?) del tempo presente per loro ci sarebbero serie difficoltà per l'inserimento nel mondo del Lavoro.
Ho scritto inserimento, dati gli esempi specifici, non reinserimento, a ragion veduta.
Purtroppo, lo stesso varrebbe anche per un ingegnere o un medico.
Se a quarant'anni lasci il lavoro, ti dedichi alla politica, sei bravissimo ma dieci anni dopo devi/vuoi tornare cittadino privato, come campi?
Chi ti assume a 40, 45 o 50 anni se nei precedenti 5-15 anni non hai esercitato lo farebbe solo per approfittare dei tuoi contatti e del tuo potere accumulato nel tempo.
Voglio proprio vedere se completati i due mandati tutti 'sti paladini di stipendi bassi scambiati per onestà ed efficienza si troveranno un posto nel privato o saranno sistemati come al solito in qualche partecipata (a discapito di un tecnico meritevole).
I politici bisogna pagarli bene.
Perchè pensino a voi prima che a se stessi.
Più è alto, critico ed impegnativo il loro compito più il popolo dovrebbe avere a cuore che stiano comodi e non stargli addosso per gli scontrini:
fate quello che volete ma date risultati, siate anche non perfettamente onesti, ma fate gli interessi della Collettività, sempre.
E poi, anche se vi fate dei nemici, quando il vostro mandato sarà finito, male che vada dovete poter tornare al reddito precedente.
Invece, ai ricchi politici fa piacere che il mestiere di politico diventi loro esclusivo appannaggio.
"No, xmila € al mese? Sono troppi, è uno scandalo, ci rinuncio, io lavoro gratis per voi". 
Dice chi ha una rendita di x*x*x mila € al giorno.
O la certezza di farne x*x*x*x*x*x durante e dopo il mandato.
Tertium non datur.
La Parabola di Marino, a cui nemmeno Papa Francesco ha mostrato Misericordia nell'anno del Giubileo,schiacciato tra i giganteschi interessi privati che voleva smantellare e l'idrofobia plebea che manda al rogo un chirurgo prestato alla politica e rimette sul trono esattamente  e precisamente:


  • chi fa malfunzionare la metropolitana;
  • chi fa malfunzionare la raccolta rifiuti;
  • chi magna pure sui fiori delle aiuole;
  • chi permette che una casa costi quanto un bombardiere stealth.
mi fa desiderare, davvero, desiderare, che a Roma, mi perdonino amici e parenti ivi residenti, torni al potere la stessa gente di prima ma con in più il certificato di immunità rilasciato loro dai romani  che hanno deciso di liberare Barabba ancora una volta.
Se prima rubavano 10 ora io stesso credo che dovrebbero poter rubare e devastare almeno il doppio.
Insomma, quanto vorrei vedere un Frankenstin Dibbaforzanuovalemannocasamonicacoatta a gestire 'sto giubileo, la Capitale e a scacazzare col cane in Piazza San Pietro.
Fan di Alemanno e Traditori di Marino: siete tutti invitati, davvero di cuore, a quell'evento.
Che la festa ricominci

7 ottobre 2015

Pensavo fosse un Tornado (sull'ISIS) invece era un peto


un bombardiere russo Tu-160 BlackJack

Pare che il Bel Paese abbia deciso, alla fne, di andare alla guerra contro ISIS.
All'italiana, of course.
Beh, per la precisione, in questo caso, direi proprio all'Europea.
Si starebbe progettando di far bombardare l'ISIS da un pugno di Tornado di base in Kuwait, attualmente impiegati per la ricognizione.
Facciamo un breve ripasso.
Il Libia la situazione non migliora.
In Egitto è in deterioramento, viste le scarse capcacità dimostrate  dall'esercito di controllare le varie tipologia di terroristi in azione.
La Siria è un buco nero a forma di incognita, con l'intervento russo che ormai spazia dai bombardieri tattici ai missili da crociera e, a breve, gli elicotteri d'attacco.
Tutti questi mezzi sono impegnati contro tutti gli oppositori di Assad, eccetto, al momento i Kurdi.
Poi l'Iraq, invaso dall'ISIS. 
E, oltre, l'Iran, che minaccia di distruggere Israele appena messa assieme la Bomba un giorno sì e l'altro pure (parentesi: i negoziatori americani hanno affermato che la scelta era tra accettare questo accordo o la guerra. Un involontario omaggio all'aforisma di Churchill: potevate scegliere tra il disonore e la guerra, avete scelto il disonore e avete avuto la guerra).
E, per chiudere il cerchio, l'Afghanistan, in cui i Taliban dimostrano sul terreno di essere lontanissimi dalla sconfitta mentre l'esercito nazionale non sa fare di meglio che chiedere airstrikes su un ospedale.
Fine del ripasso.
In mezzo a tutto questo, l'Italia sta riflettendo se usare, diciamo due Tornado, per attaccare l'ISIS.
Ammazza che paura tengono ora a Mosul.
E che coraggio gli italiani!
I resistenti Kurdi si sentiranno rassicurati di avere l'Italia dalla loro parte.
Sarcasmo a parte, l'uso di un paio di bombardieri non avrà alcun impatto militare e, francamente, nemmeno politico.
In più, ci accolleremmo il rischio di ammazzare un sacco di gente innocente magari come a Kunduz.
Eppure, come la crisi dei migranti in corso dimostra inequivocabilmente, sarebbe nostro interesse poter agire in Medio Oriente e Nord Africa in modo conforme ai nostri interessi nazionali, che, guarda un po', coincidono anche con la salvezza di tutta quella gente che ora vive tra Assad, ISIS e Putin (per tacere per la Mattanza Libica, piccola Siria nella quarta sponda).
Putin oggi ha usato addirittura dei missili da crociera che hanno violato gli spazi aerei Iraniani, Iraqeni e, forse, anche Turchi, assumendosi un grave rischio in caso di caduta accidentale dei missili in questi paesi.
E, in questo scenario, noi Italia, ma anche noi Europa. non facciamo nulla.
Solo i Kurdi di Siria combattono a viso aperto l'ISIS.
E a loro va tutta la mia spicciola solidarietà.
Se volessimo contrastare ISIS dovremmo aiutare i Kurdi per come possiamo, come direbbero i romani: terra marique.
Invece, inizieremo il solito nauseabondo dibattito sul niente.
Per adeguarci al nostro spessore morale.



un Tornado equipaggiato per la ricognizione



Il Teorema di Unicità del limite e l'importanza della sua dimostrazione nel fare la pipì

Il Teorema di Unicità del Limite me lo ricordo perchè me lo chiesero all'esame di Analisi I, o, forse, me lo ricordo perchè era uno dei pochi di cui trovassi intuitiva la dimostrazione.
Quando dico che me lo ricordo intendo che mi ricodo della sua esistenza, non che lo sappia enunciare o tanto meno dimostrare.
Siete curiosi?
Ecco qui, su Wikipedia trovate una spiegazione, un po' criptica ma c'è tutto. 
(A proposito, avete fatto la vostra donazione annuale a Wikipedia?)
Ora, come da titolo, cosa c'entra il Teorema di Unicità del Limite con il fatto di fare la Pipì?
Che siate maschietti o femminuccie, sia a prima vista che dopo una decorosa meditazione sul link di Wikipedia, arriverete alla certezza che non vi è alcuna correlazione tra il suddetto teorema ed il fare la pipì.
Cosa che sostengo anche io senza tema di smentita funzionale.
Ecco, personalmente, ritengo che nelle questioni di Fede, in generale, e nei rapporti tra l'Uomo e Dio, in particolare, tutto quello che ha a che fare con la sfera della Sessualità abbia la stessa importanza e rilevanza del Teorema di Unicità del Limite rispetto a fare la pipì.
E non ho altro da aggiungere

2 ottobre 2015

Comandante Nasrin

Le bombe russe sulla Siria, la Morte della Sinistra Italiana, il flop di Civati, il reportage di Zerocalcare dalla striscia di Siria liberata dai Curdi.
Tanta roba...
Ma per me la notizia del giorno è Zerocalcare di cui è in uscita l'ultima sua raccolta di strip pubblicate sul blog più inediti.
Sì, lo comprerò, ma qui vorrei parlare del suo reportage pubblicato su Interazionale del 2 Ottobre.
Sono poche, densissime, pagine efficaci nel descrivere non solo lo spaccato di un pomeriggio passato tra le forze curde che combattono ISIS, quanto l'assenza delle voci (e delle armi, degli uomini e delle coscienze) di una Europa schizofrenica e vigliacca.
Non sono abbastanza bravo da descrivere, a parole, il mio stato d'animo di fronte a questi anni di guerra e povertà morale.
Zerocalcare ci riesce coi disegni.
I Curdi combattono per i Materani ed i Bolognesi, per Borghezio e per Gino Strada.
La Turchia e il suo doppio gioco, i silenzi dei pacifisti, ma, soprattutto, il Popolo Curdo e la sua resistenza nobile, democratica, moderna: ecco Comandante Nasrin.
Non suggerisco semplicemente di comprarlo, ma anche di pensare a questa sera di pioggia, al caldo, tranquilli nelle nostre occupazioni al netto delle farneticazioni dei leghisti e dello squallore dei nostri politici. E al prezzo che altri pagano per mantenerci nell'ignavia.