Miniguida: come sincronizzare il proprio Google Drive su Ubuntu

  • Stampa

googledriveOggigiorno, i cloud sono diventati un importante strumento per poter fruire di documenti e programmi senza dover necessariamente avere sempre con sè il proprio PC o notebook.

Ma cos'è un "cloud storage". Per i neofiti, un altro importantissimo strumento del Web moderno, Wikipedia, ci viene in soccorso indicandoci che

Il Cloud Storage è un modello di conservazione dati su computer in rete dove i dati stessi sono memorizzati su molteplici server virtuali generalmente ospitati presso strutture di terze parti o su server dedicati. Le compagnie che si occupano di hosting gestiscono solitamente data center di notevoli dimensioni, i clienti che necessitano di spazio per conservare i propri dati comprano o affittano capacità di storage e la usano per i propri bisogni. Gli operatori dei data center, in background, virtualizzano le risorse in accordo con le richieste dei clienti e le pubblicano come server virtuali che i clienti possono gestire in autonomia. Fisicamente le risorse possono essere distribuite su più server in maniera del tutto trasparente per l'utilizzatore finale.

Probabilmente il più famoso servizio di cloud storage è Dropbox, ma sempre più piede prendono servizi creati dalle grandi major informatiche, quali Google Drive e SkyDrive di Microsoft. Una utilissima funzionalità di questi cloud storage services è quella di poter avere automaticamente sincronizzati i nostri file contenuti nel cloud storage remoto con quelli che sul nostro PC sono salvati in una ben determinata locazione da noi stessi indicata. Solitamente, i fornitori del servizio di cloud storage mettono anche a disposizione facili strumenti di sincronizzazione per sistemi Microsoft Windows; più "bistrattati", invece, sono i sistemi operativi open source quali Ubuntu

Ma ecco che la comunità degli sviluppatori viene in soccorso degli utenti, mettendo a disposizione tools e workaround molto utili. In questa guida, parleremo di come sincronizzare una cartella locale del nostro PC con l'account che abbiamo su Google Drive. La guida è stata testata per Ubuntu 12.04 Precise Pangolin

Passo 1: Installare Grive. Prima di tutto aprite il terminale e digitate queste semplici righe (sarà aggiunto il repository dedicato, aggiornata la lista pacchetti e infine sarà installato Grive):

> sudo add-apt-repository ppa:nilarimogard/webupd8
> sudo apt-get update
> sudo apt-get install grive

Passo 2: creare la cartella locale. Ora che avete installato Grive dovete creare la cartella che farà da contenitore per i file di Google Drive. Tornate sul terminale e digitate:

> mkdir -p ~/nomedellacartella
> cd ~/nomedellacartella
> grive -a

Nel terminale comparirà un link seguito dalla richiesta di un codice;

Grive codice attivazione
Cliccando sul link si aprirà una pagina di Google Drive che vi chiederà di consentire l’accesso a grive; accettando verrete reindirizzati verso un’altra pagina che vi darà un codice: copiatelo e incollatelo nel terminale, date invio e avrete finito.

Grive auth

Ora, tutte le volte che volete sincronizzare i vostri file su Google Drive, non dovete fare altro che digitare dal terminale:

> cd ~/nomedellacartella
> grive

e potrete sincronizzare la cartella con quella di Google Drive.

Passo 3: automatizzare la sincronizzazione. Quanto finora abbiamo visto ci permette di sincronizzare manualmente il nostro Google Drive cloud storage con una cartella locale sul nostro PC. Qualora, invece, volessimo sincronizzare automaticamente i file, gestiremo il tutto attraverso le funzionalità fornite da crontab. Creare anzitutto uno script sh dal nome gdrivesync, che salveremo ad esempio in ~/bin/ e che conterrà il seguente codice

#!/bin/bash
GRIVE_COMMAND_WITH_PATH=/usr/bin/grive # Path to your grive binary, change to match your system
GDRIVE_PATH=~/dati/GDrive # Path to the folder that you want to be synced

# while true
# do
# inotifywait -e modify -e move -e create -e delete -r $GDRIVE_PATH
cd $GDRIVE_PATH && $GRIVE_COMMAND_WITH_PATH
# done

Una volta reso eseguibile gdrivesync (chmod +x gdrivesync è il comando da terminale), sempre da terminale, basterà eseguire

> crontab -e

Nella schermata che si aprirà, inserire il codice sottostante (sostituendo /home/user/bin/ col path completo del vostro script gdrivesync)

5 * * * * pidof grive || /home/user/bin/gdrivesync

Salvate e chiudete. Il gioco è fatto