. . .

 

Syncthing è una applicazione client/server di sincronizzazione file open-source e multipiattaforma, scritta in Go.

Gli apparati che eseguono il software sono in grado di condividere file senza la necessità di usufruire di un servizio di storage proprietario:

  • Nessun dato viene mai memorizzato in luogo diverso dagli apparati stessi.
  • Tutte le comunicazioni sono criptate tramite TLS.
  • Ogni nodo viene identificato da un certificato crittografico. Solo i nodi esplicitamente autorizzati sono in grado di connettersi al cluster.

La configurazione può avvenire tramite browser.

È supportato il protocollo UPnP/NAT-PMP per la configurazione automatica dei router che lo supportano.

Sono disponibili strumenti di terze parti che, interfacciandosi al software, permettono di semplificarne ulteriormente l'utilizzo.

 

Sviluppatore: Jakob Borg
Data prima versione    15 dicembre 2013
Sistema operativo: Multipiattaforma
Linguaggio: Go
Genere: Peer-to-peer
Licenza: MPL 2.0 (licenza libera)
Lingua: Italiano, inglese, tedesco, greco, spagnolo, francese, portoghese, russo, svedese, norvegese.
Sito web: http://syncthing.net

 

Syncthing è disponibile per i seguenti sistemi operativi:
    Microsoft Windows
    macOS
    Linux
    FreeBSD
    Oracle Solaris
    Dragonfly BSD
    NetBSD
    OpenBSD
    Dispositivi NAS

 

Fonte: https://it.wikipedia.org

 


 

 

Cominciamo subito con il dire che rispetto a DropBox esiste una sostanziale differenza, dovuta alla connessione di tipo Peer-To-Peer. Sto parlando del fatto che se vogliamo aggiornare i nostri file è necessario che Destinazione e Origine siano entrambe disponibili. Questo vuol dire che non basta associare tramite ID i dispositivi, ma è necessario che i cambiamenti siano visti sul pc di destinazione. Quindi, a differenza di dropbox non funzionerà il seguente caso:
- Associo pc 1 con pc 2
- Spengo pc1
- Modifico un file su pc 2
- spengo pc2
All’accensione di Pc1 le modifiche non verranno sincronizzate su pc1.

Possibile soluzione:
Una soluzione praticabile potrebbe essere quella di applicare una struttura come quella che vi mostro nella figura:

 




Sostanzialmente utilizzare un pc (NODO) che dovrà rimanere acceso e che manterrà sincronizzati i due client. In questo modo PC1 e PC2 non dovranno comunicare direttamente ma riceveranno solamente da NODO le modifiche ogni qualvolta sarà necessario. Per questo motivo NODO diventerà un pc su cui non si andrà a intervenire direttamente ma configurato in modo da rimanere in ascolto sui due client. Ovviamente questa è la solizione che nel mio caso può funzionare meglio, ma attraverso il programma (e la gestione di n computer)è possibile configurare soluzioni anche più complesse e articolate. Il software è installabile sui pc win/linux praticamente a costo zero ed è configurabile in ogni sua parte. Una buona idea potrebbe essere quella di rendere accedibili i file read-only su alcune postazioni che non dovranno utilizzarli direttamente. Vi consiglio di inserire il rpgramma tra quelli predefiniti all’avvio del s.o. di modo da non dovervi ricordare di avviare la sincronizzazione a mano ad ogni avvio. Il programma in definitiva mi sembra davvero ottimo; e mi ha stuzzicato diverse idee, ad esempio quella di implementare il pc NODO attraverso un rasberry-py (così da evitare problemi di ingombro, rumorosità, consumo elettrico). Stay Tuned…

Fonte: http://increativita.altervista.org

 


 

 

Vi presentiamo Syncthing, software open source che ci consente di trasferire facilmente file tra pc Linux, Windows e Mac senza usare nessun storage cloud o altro. Nei giorni scorsi abbiamo presentato un’interessante guida con la quale sincronizzare file e directory tra pc e device mobili utilizzando il nostro device mobile Android. Se vogliamo sincronizzare file e directory senza usare cloud storage o altri servizi di terze parti, arriva il nuovo Syncthing interessante progetto open source. Syncthing è un software, attualmente disponibile per Microsoft Windows, Mac, Linux (anche nella versione arm6 per Raspberry PI) e FreeBSD, che ci consente di trasferire facilmente file e directory tra pc grazie al protocollo TLS. Il programma non richiede alcuna installazione, basta dare un doppio click sul file binario per avviare un’interfaccia web con la quale potremo gestire le directory da sincronizzare, connessione, ecc. Oltre a sincronizzare, potremo effettuare il backup dei nostri file e directory preferiti salvandoli in un’altro pc, possiamo inoltre scambiare velocemente file tra utenti ecc. Unico dettaglio è capire come vengono gestiti i nodi e reposiory, ossia i nodi sono gli altri dispositivo con i quali vogliamo sincronizzare i file,  mentre i repository sono le directory da sincronizzare. Per utilizzare Syncthing in Linux, Windows, Mac e FreeBSD basta scaricare l’applicazione da questa pagina estrarre il file e dare un doppio click sul file syncthing e aspettare alcuni secondi che si avvii il nostro browser preferito con le preferenze dell’applicazione. Anche se chiudiamo il browser il servizio continuerà a funzionare fino a quando non spegniamo il pc o terminiamo la sessione.

Fonte: https://www.lffl.org

 


 

 

Syncthing ti permette di sincronizzare dati in modo sicuro tra più computer senza bisogno di un servizio di cloud storage. Syncthing è ancora in fase di sviluppo, sebbene sia già stato implementato un gran numero di funzionalità:
- GUI Web. Configura e controlla Syncthing tramite un’interfaccia reattiva e potente accessibile tramite il browser.
- Portatile. Funziona su Mac OS X, Windows, Linux, FreeBSD, Solaris e OpenBSD. Eseguilo sui tuoi computer desktop e sincronizzali con il tuo server per il backup.
- Semplice. Syncthing non ha bisogno di indirizzi IP o configurazione avanzata: funziona solo su LAN e su Internet. Ogni macchina è identificata da un ID. Basta dare il tuo ID ai tuoi amici, condividere una cartella è tutto facile e intuitivo.
- Potente. Sincronizza tutte le cartelle di cui hai bisogno con persone diverse.
- Privato. Nessuno dei tuoi dati viene mai memorizzato in nessun altro posto che non siano i tuoi computer. Non esiste un server centrale che potrebbe essere compromesso, legalmente o illegalmente.
- Criptata. Tutte le comunicazioni sono protette tramite TLS. La crittografia è utilizzata per impedire a qualsiasi utente non autorizzato di accedere ai dati.
- Autenticato. Ogni nodo è identificato da un forte certificato crittografico. Solo i nodi esplicitamente consentiti possono connettersi al tuo cluster.
Per concludere, il vantaggio principale di Syncthing è costituito dal fatto che non c’è un server cloud centrale dove sostano i file e questi file, si trasferiscono automaticamente su tutti i computer connessi. Lo svantaggio principale, rispetto al cloud è che usando Syncthing se desideri che i tuoi computer al momento della loro accensione, ricevano le modifiche fatte negli altri, è necessario che almeno uno di essi rimanga sempre acceso. Il programma è scaricabile qui .

Fonte: https://unpoditutto.info

 


 

 

Btsync era veramente un bel programma, ma dopo aver fatto venire l’acquolina in bocca l’hanno messo a pagamento. La cosa peggiore tuttavia, restava il fatto che non fosse opensource.

Per fortuna esiste una validissima alternativa che risolte questi 2 problemi. Syncthing. Syncthing che è scritto in Go ed è per questo molto veloce e adatto ad essere installato su dispositivi che non hanno molta memorie e potenza di calcolo come, ad esempio, la mia amata Raspberry Pi. La cosa che contraddistingue Syncthing, rispetto altre soluzioni opensource simili, è la sua architettura che si appoggia su relay server in cloud per la sincronizzazione dei file. In questo modo la sincronizzazione può avvenire senza dover aprire porte nel vostro router, esattamente come accade con programmi tipo Dropbox. Prima di partire, tenete presente che alla fine di questa guida:
- Syncthing dovrà funzionare sotto l’utente pi.
- Come conseguente del punto sopra, i files di configurazione saranno creati sotto la home dell’utente pi ( /home/pi/.config ).
- Le cartelle che potrebe condividere dovranno stare sotto la home dell’utente pi. Bene. Vediamo ora come possiamo installarlo sulla Raspbian.

Installazione.
Innanzitutto scarichiamo la chiave gpg per poter aggiungere in seguito il repository debian.
wget -O - https://syncthing.net/release-key.txt | sudo apt-key add -
Ora aggiungiamo il repository:
echo "deb http://apt.syncthing.net/ syncthing release" | sudo tee -a /etc/apt/sources.list.d/syncthing-release.list
Aggiorniamo il repository:
sudo apt-get update
sudo apt-get install syncthing -y
Ora facciamo partire syncthing una prima volta. Questa operazione crea i files di configurazione nella home dell’utente con cui abbiamo lanciato il programma. Digitate quindi nel terminale:
syncthing
Dovreste vedere un output tipo questo:
[monitor] 17:45:33 INFO: Starting syncthing
[start] 17:45:33 INFO: Generating RSA key and certificate for syncthing...
[HR2B5] 17:47:33 INFO: syncthing v0.11.12 (go1.4.2 linux-arm default) unknown-user@syncthing-builder 2015-07-05 09:24:21 UTC
[HR2B5] 17:47:33 INFO: My ID: HR2B56D-52WUAGB-36PBQRH-VBU3AAN-YS6SXIM-LJXVBZP-BR3CEMP-STI4EQW
[HR2B5] 17:47:33 INFO: No config file; starting with empty defaults
[HR2B5] 17:47:33 INFO: Edit /home/pi/.config/syncthing/config.xml to taste or use the GUI
[HR2B5] 17:47:33 INFO: Database block cache capacity 8192 KiB
[HR2B5] 17:47:33 OK: Ready to synchronize default (read-write)
[HR2B5] 17:47:33 INFO: Starting web GUI on http://127.0.0.1:8384/
[HR2B5] 17:47:33 INFO: Loading HTTPS certificate: open /home/pi/.config/syncthing/https-cert.pem: no such file or directory
[HR2B5] 17:47:33 INFO: Creating new HTTPS certificate
[HR2B5] 17:47:33 INFO: Generating RSA key and certificate for raspberrypi...
[HR2B5] 17:47:33 INFO: Completed initial scan (rw) of folder default
Ora fermiamo il programma premendo Ctrl-C .
La configurazione standard di syncthing, prevede che l’accesso alla sua pagina web di configurazione, possa avvenire solo dalla macchina locale. Stiamo installando syncthing su un Raspberry Pi quindi è ovvio che dobbiamo accedervi da remoto. Apriamo quindi il file di configurazione per modificare tale impostazione.
vi /home/pi/.config/syncthing/config.xml
Nel file dobbiamo cambiare la riga con scritto 127.0.0.1 (solo accessibile dalla macchina locale) in 0.0.0.0 (accessibile da tutte le macchine). Modificare tls in true se volete attivare l’ssl per l’interfaccia di configurazione.
<gui enabled="true" tls="false">
 <address>0.0.0.0:8384</address>
 <apikey>VbsKT2fCELYldTI74Tk4BKCbJP8Frlij</apikey>
</gui>

Autostart di Syncthing su Raspberry Pi. Creare il file di init.d con:
sudo vi /etc/init.d/syncthing

Incollateci dentro questo:
#!/bin/sh
### BEGIN INIT INFO
# Provides:          Syncthing
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Syncthing
# Description:       Syncthing is for backups
### END INIT INFO
# Documentation available at
# http://refspecs.linuxfoundation.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/iniscrptfunc.html
# Debian provides some extra functions though
. /lib/lsb/init-functions
DAEMON_NAME="syncthing"
DAEMON_USER=pi
DAEMON_PATH="/usr/bin/syncthing"
DAEMON_OPTS=""
DAEMON_PWD="${PWD}"
DAEMON_DESC=$(get_lsb_header_val $0 "Short-Description")
DAEMON_PID="/var/run/${DAEMON_NAME}.pid"
DAEMON_NICE=0
DAEMON_LOG='/var/log/syncthing'

[ -r "/etc/default/${DAEMON_NAME}" ] && . "/etc/default/${DAEMON_NAME}"

do_start() {
  local result

    pidofproc -p "${DAEMON_PID}" "${DAEMON_PATH}" > /dev/null
    if [ $? -eq 0 ]; then
        log_warning_msg "${DAEMON_NAME} is already started"
        result=0
    else
        log_daemon_msg "Starting ${DAEMON_DESC}" "${DAEMON_NAME}"
        touch "${DAEMON_LOG}"
        chown $DAEMON_USER "${DAEMON_LOG}"
        chmod u+rw "${DAEMON_LOG}"
        if [ -z "${DAEMON_USER}" ]; then
            start-stop-daemon --start --quiet --oknodo --background \
                --nicelevel $DAEMON_NICE \
                --chdir "${DAEMON_PWD}" \
                --pidfile "${DAEMON_PID}" --make-pidfile \
                --exec "${DAEMON_PATH}" -- $DAEMON_OPTS
            result=$?
        else
            start-stop-daemon --start --quiet --oknodo --background \
                --nicelevel $DAEMON_NICE \
                --chdir "${DAEMON_PWD}" \
                --pidfile "${DAEMON_PID}" --make-pidfile \
                --chuid "${DAEMON_USER}" \
                --exec "${DAEMON_PATH}" -- $DAEMON_OPTS
            result=$?
        fi
        log_end_msg $result
    fi
    return $result
}

do_stop() {
    local result

    pidofproc -p "${DAEMON_PID}" "${DAEMON_PATH}" > /dev/null
    if [ $? -ne 0 ]; then
        log_warning_msg "${DAEMON_NAME} is not started"
        result=0
    else
        log_daemon_msg "Stopping ${DAEMON_DESC}" "${DAEMON_NAME}"
        killproc -p "${DAEMON_PID}" "${DAEMON_PATH}"
        result=$?
        log_end_msg $result
        rm "${DAEMON_PID}"
    fi
    return $result
}

do_restart() {
    local result
    do_stop
    result=$?
    if [ $result = 0 ]; then
        do_start
        result=$?
    fi
    return $result
}

do_status() {
    local result
    status_of_proc -p "${DAEMON_PID}" "${DAEMON_PATH}" "${DAEMON_NAME}"
    result=$?
    return $result
}

do_usage() {
    echo $"Usage: $0 {start | stop | restart | status}"
    exit 1
}

case "$1" in
start)   do_start;   exit $? ;;
stop)    do_stop;    exit $? ;;
restart) do_restart; exit $? ;;
status)  do_status;  exit $? ;;
*)       do_usage;   exit  1 ;;
esac

Rendere il file eseguibile:
sudo chmod +x /etc/init.d/syncthing
Impostare lo startup del servizio alla partenza dell Raspberry Pi:
sudo update-rc.d syncthing defaults

Fonte: https://www.stefanoteodorani.it

 


 

L'integrazione di Syncthing dentro al pannelio di Gnome, su Linux.

 

 

Alcuni consigli su come usare al meglio Syncthing su Linux.

Avviare una prima volta nel terminale il comando:
syncthing
cosicche' apparira' la futura cartella condivisa di default nella Home ( /home/nomeutente/Sync ) e la key che servira' ai vostri amici per trovarvi nella rete di questa condivisione. Dopo comandate nel terminale:
sudo chmod 777 /home/nomeutente/.config/syncthing/config.xml
tenendo conto il valore nomeutente qui sopra e' da sostiture con il vostro username. Date quindi il comando:
leafpad /home/nomeutente/.config/syncthing/config.xml
(sempre modificando il valore nomeutente come sopra); se non avete installato l'editor Leafpad potete usare come comando iniziale nano, oppure gedit, oppure geany secondo le vostre disponibilita'. Scendete nel file di configurazione e, dove indica l'indirizzo 127.0.0.1 cambiatelo con 0.0.0.0 , poi salvate la vostra modifica. Se impostate come predefinito del sistema operativo (default) un browser leggero come Midori oppure Epiphany oppure SeaMonkey, la pagina di configurazione di Syncthing vi si aprira' senza pesare troppo sulla macchina.

 

Potete ottenere una sezione del Menu' per comandare al meglio Syncthing, come nell'esempio qui sotto.

Aprite il vostro Menu' del sistema operativo con programmi come Alacarte, ed inserite una nuova sezione chiamata Sincronizzazione oppure Syncthing. Ecco come potrebbero essere costruti i vostri comandi.

Avvio sincronizzazione
syncthing
(volendo potete indicare di lanciarlo nel terminale all'avvio, e' utile per controllarne il funzionamento)



Stop sincronizzazione
killall syncthing

Cartella condivisa
pcmanfm /home/nomeutente/Sync
(tenene conto che dovete cambiare il valore nomeutente con il vostro username; potreste avere un gestore di file diverso da PCManFM, come Nautilus oppure Nemo oppure Dolphin oppure Thunar oppure Xfe o altri, quindi il vostro comando potrebbe dover cominciare con una parola diversa da pcmanfm)

Separatore

Configurazione - pericolo
leafpad /home/nomeutente/.config/syncthing/config.xml
(come indicato prima, potete usare un editor diverso da Leafpad e dovete cambiare il valore nomeutente con il vostro username)

Adesso la vostra sezione del Menu' e' pronta a darvi modo di poter agire su questo software in modo piu' semplice di prima.

 

Non sempre l'installazione di Syncthing garantisce che esso si avviera in lingua italiana, se cio' non avvenisse andate nella pagina web aperta dal browser e cliccate sul comando evidenziato qui sopra con una freccia.

Vi si aprira' una sezione da cui scegliere la lingua italiana (esempio qui sopra), poi cliccate per confermare la vostra scelta.

La pagina iniziale si ricarichera', facendo apparire messaggi e comandi in lingua italiana (esempio qui sopra).

 

Nell'esempio qui sopra leggete un appello ad impostare un sistema username/password di protezione, ma anche una freccia che dirige verso le Impostazione, se ci cliccate sopra si entra in nuova finestra con delle opzioni (esempio sotto).

Se non volete usare tutta la banda di connessione potete impostare dei valori massimi (esempio qui sotto).

Nell'esempio qui sotto vedete dove si puo' impostare username e password per proteggere il vostro programma Syncthing, come da appello citato sopra.

Quando avete completato i vostri settaggi potete salvarli usando la finestrella indicata qui sotto.

 

Nell'esempio qui sopra vedete dove potete trovare il vostro ID per condividerlo con gli amici con cui volete effettuare una sincronizzazione, per semplificarvi la vita e' disponibile come testo lungo per un copia/incolla oppure anche un codice QR quadrato.

 

Nell'esempio qui sopra vedete come accedere al menu' di impostazioni avanzate, se non siete esperti lascetelo perdere.

 

Potete consultare un resoconto generale della vostra sincronizzazione/condivisione, molto utile imparare a comprenderla.

 

Il punto indicato qui sopra indica non solo che la cartella e' condivisa (se il colore e' verde) in sincronizzazione, ma cliccandoci sopra e' anche possibile modificare il settaggio di quella condivisione. Qui sotto vedete la versione del programma per la versione Ubuntu, dove c'e' una intera scritta cliccabile.

Se cliccate ecco che si apre una finestrella nascosta da cui potete modificare alcune cose, nell'esempio qui sotto vedete i comandi aggiuntivi che sono comparsi grazie alla freccia che li indica.

 

Premendo il pulsante indicato qui sopra (versione vecchia) oppure quello qui sotto (versione piu' recente) si attiva e/o si accellera la condivisione di un file nella rete che avete impostato.

Nella versione piu' recente (esempio sotto) e' anche possibile sospendere per tutto il tempo che volete tutte le condivisioni sincronizzate di tutte le cartelle.

 

Potete aggiungere una cartella (dovrete poi scegliere con chi condividerla) cliccando il pulsante indicato qui sopra.

 

Potete aggiungere una macchina vostra o di un vostro amico nella sincronizzazione cliccando il pulsante che vedete qui sopra. Potete essere in condivisione/sincronizzazione con piu' macchine remote, come nell'esempio qui sotto.

 

Nella finestrella che si aprira' (esempio qui sopra) dovrete mettere l'ID che il dispositivo remoto utilizza (magari il vostro amico ve lo manda via email), e specificate di quale macchina remota si tratta per distinguere se avete piu' condivisioni (esempio sotto).

 

Scegliete sempre quali cartelle, tra quelle che avete precedentemente preparato, il vostro dispositivo condividera' con quello remoto. Alla fine dell'operazione salvate cliccando sull'icona indicata qui sotto.

 

Questi consigli sono stati studiati e condivisi dal Webmaster del portale Ogigia.

 

 

 

Segnala questa pagina web in rete.

 

Disclaimer: questo sito ("Ogigia, l'isola incantata dei navigatori del web") NON rappresenta una testata giornalistica in quanto viene aggiornato senza alcuna periodicità su vari argomenti, tra cui Linux, geopolitica, metodi di auto-costruzione di risorse, elettronica, segreti, informatica ed altri campi. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge n. 62 del 07/03/2001. Il Webmaster inoltre dichiara di NON essere responsabile per i commenti inseriti nei post. Ogni informazione circa la salute o l'alimentazione sono solo a carattere informativo, e NON siamo responsabili di qualsiasi conseguenza negativa se qualcuno vuole improvvisarsi medico oppure dietologo; si consiglia sempre di rivolgersi a medici ed esperti qualificati. Eventuali commenti dei lettori, lesivi dell'immagine o dell'onorabilità di persone terze NON sono da attribuirsi al Webmaster, che provvederà alla loro cancellazione una volta venuto a conoscenza di un ipotetico problema. Eventuali ritardi nella cancellazione di quanto sgradito non sono imputabili a nessuno. Si declina ogni responsabilità sull'utilizzo da parte di terzi delle informazioni qui riportate. Le immagini pubblicate su questo sito, salvo diversa indicazione, sono state reperite su Internet, principalmente tramite ricerca libera con vari motori. In ogni caso si precisa che se qualcuno (potendo vantare diritti su immagini qui pubblicate, oppure su contenuti ed articoli, o per violazioni involontarie di copyright) avesse qualcosa da rimproverare o lamentare può scriverci attraverso la sezione per i contatti .