GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Syncthing su Ubuntu 20.04 e Ubuntu 21.04

Syncthing è un'applicazione di sincronizzazione di file peer-to-peer gratuita, open source. Syncthing può sincronizzare file tra dispositivi su una rete locale o tra dispositivi remoti su Internet, con tutti i dati trasmessi tra più dispositivi sono crittografati con TLS. Ogni volta che crei, modifichi o elimini dati su un nodo di peering, l'applicazione replicherà automaticamente le modifiche su altri server. Un'altra funzionalità popolare è la sincronizzazione multipiattaforma disponibile su Windows, macOS, Linux, Android, Solaris, Darwin e BSD che consente la sincronizzazione su più dispositivi.

Per gli utenti che desiderano provare questo fantastico software di sincronizzazione, alla fine di questa guida saprai come installare Syncthing su Ubuntu 20.04 LTS . Lo stesso principio funzionerà per la versione più recente Ubuntu 21.04 (Hirsute Hippo).

Prerequisiti

  • Sistema operativo consigliato: (2x) Ubuntu 20.04 – opzionale (Ubuntu 21.04 e Linux Mint 20)
  • Account utente: Un account utente con accesso sudo o root.
  • Pacchetti richiesti: apt-transport-https, curl

Controlla e aggiorna il tuo sistema operativo Ubuntu 20.04.

sudo apt update && sudo apt upgrade -y

Per impostazione predefinita, i server dovrebbero essere dotati di (curl) installato, ma lo controllerai insieme all'installazione di (apt-transport-https) pacchetto, necessario affinché il gestore di pacchetti APT possa stabilire una connessione HTTPS con questo repository.

sudo apt install apt-transport-https curl -y

Installa Syncthing utilizzando il repository .Deb ufficiale

Syncthing è nei repository Ubuntu predefiniti ma non è aggiornato come molti vorrebbero. Invece, installerai il repository ufficiale di deb dei sorgenti:

Innanzitutto, aggiungi la chiave GPG eseguendo il comando seguente:

curl -s https://syncthing.net/release-key.txt | sudo apt-key add -

Dovresti ottenere il (Ok) output come sopra nel tuo terminale Ubuntu, e questo significa che la chiave GPG è stata importata correttamente. Successivamente, dovrai aggiungere il repository Syncthing eseguendo quanto segue nel tuo terminale:

echo "deb https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list

Ora puoi aggiornare i tuoi repository e installare Syncthing:

sudo apt update && sudo apt install syncthing -y

Conferma l'installazione controllando la versione build:

syncthing --version

Configura Syncthing come servizio Systemd

Sincronizzazione (.deb) il pacchetto viene fornito con il richiesto (systemd) service nella posizione (/lib/systemd/system) . In questa directory troverai ([email protected]) file. Il modo in cui funziona Syncthing è che devi inserire il nome utente dell'account tra (@) e il (.servizio), ad esempio ([email protected]) .

Per avviare e abilitare Syncthing, devi eseguire il comando seguente.

sudo systemctl enable [email protected]

Per sapere se ha avuto successo, dovresti vedere l'esempio sotto riportato con (Created symlink) :

Ora che il servizio è abilitato all'avvio, è necessario avviarlo manualmente questa volta eseguendo quanto segue:

sudo systemctl start [email protected]

Ora dovresti controllare lo stato digitando il seguente comando:

sudo systemctl status [email protected]

Per uscire dalla schermata di stato, premi (Q) o (CTRL+C) .

Nota, i tuoi file di configurazione si trovano in (/home/username/.config/syncthing/) e la tua cartella Inizio predefinita è (/home/username/syncthing/) . Puoi modificare la cartella Inizio in seguito, se lo desideri.

Il file di configurazione principale si trova in (/home/username/.config/syncthing/config.xml) se è necessario modificare o correggere qualsiasi impostazione, ad esempio la modifica dell'impostazione predefinita 127.0.0.1 in un indirizzo IP interno o esterno.

Configura Firewall UFW

Syncthing dovrà essere autorizzato a utilizzare la porta (22000) per comunicare con i coetanei. Se stai usando UFW, esegui il seguente comando per consentire la porta:

sudo ufw allow 22000/tcp

Installa Syncthing Peer

Per utilizzare Syncthing, dovrai installare una seconda copia fino a questo punto su un altro server o desktop. La parte più fantastica di Syncthing è che puoi installarlo non solo su Linux ma su più sistemi operativi.

Nota, se utilizzi Syncthing per eseguire il backup su un'altra piattaforma diversa da Linux, assicurati di impostare (ricezione) solo perché i permessi dei file in entrata e in uscita causeranno problemi.

Primo utilizzo e sincronizzazione della configurazione dell'interfaccia utente Web

Syncthing ascolta (127.0.0.1:8384) per impostazione predefinita a cui puoi accedere nel tuo browser web. Digita quanto segue nella barra degli indirizzi di Internet Explorer:

http://127.0.0.1:8384

La prima volta che accedi alla WebUI, noterai un pop-up che chiede (Consenti segnalazioni di utilizzo anonime?) . Seleziona un'opzione per procedere.

Dopo aver risolto il rapporto sull'utilizzo, ti verrà richiesta una notifica (Autenticazione GUI:Imposta utente e password). È piuttosto importante proteggere il tuo servizio Syncthing, quindi dovresti premere immediatamente (Impostazioni) per procedere alla pagina di configurazione.

Nella schermata successiva, seleziona la (GUI) come mostrato di seguito:

Ora, imposta un (nome utente) e (password) . Inoltre, questa parte puoi impostare (HTTPS) per l'uso della GUI se preferisci. Al termine, premi il pulsante (Salva) pulsante nell'angolo in basso a destra come mostrato:

Ora è il momento di ripetere tutta la guida sopra su un secondo sistema operativo di peering per passare alla parte successiva della guida, che richiede (due) Sincronizzazione dei client.

Sincronizzare file e cartelle tra dispositivi

Ora hai installato 2 o più client Syncthing su vari dispositivi e sistemi operativi e ora puoi configurare la sincronizzazione di file o cartelle tra i dispositivi.

Innanzitutto, nella WebUI su (nodo peering 1) , puoi fare clic su (Azioni> Mostra ID) nell'angolo in alto a destra e troverai l'ID del dispositivo, che è una lunga stringa di lettere e numeri.

Puoi anche vedere il codice QT, l'ID del dispositivo e viene utilizzato per la sincronizzazione su smartphone e tablet.

Il passaggio successivo è copiare l'(Identificazione dispositivo) che nell'esempio della guida è (CAL3FN4-R72LBTK-Q3ZFAEC-OUOAIEM-ZOJIMQ3-JHG5OCK-ZSJORVA-64552A3) dall'interfaccia WebUI del nodo da cui desideri sincronizzare i file che abbiamo chiamato per primo (nodo di peering 1) per questa guida.

Successivamente, apri la WebUI del secondo dispositivo di peering (nodo di peering 2) e fai clic su (Aggiungi dispositivo remoto) nell'angolo in basso a destra. Dopo l'ID dispositivo, assegna un nome al nuovo dispositivo, quindi fai clic su (Salva) pulsante per procedere.

Ora di nuovo su (nodo di peering 1 ), vedrai (nodo di peering 2) che tenta di connettersi. Se non lo vedi, aggiorna la tua pagina e assicurati che UFW o un firewall simile non lo blocchi. Fai clic su (Aggiungi dispositivo) per continuare:

Dopo aver fatto clic per aggiungere il dispositivo, verrà visualizzata una nuova schermata (nodo di peering 1). Qui puoi modificare il nome predefinito del dispositivo, condividere file e directory automaticamente nel pannello di condivisione e altro ancora. Fai clic su (Salva) per continuare:

Ora entrambi i nodi sono collegati. Ora puoi condividere una directory tra i dispositivi. Ad esempio, (nodo di peering 1) ha una cartella che vuoi sincronizzare tra se stessa e (nodo di peering 2) . Il primo clic aggiunge una cartella su (nodo di peering 1) :

Per la guida, l'esempio ha utilizzato (Download) directory da sincronizzare tra i dispositivi e puoi fornire la cartella che desideri sincronizzare su (nodo di peering 2) un ID univoco (nome) . Per la guida, abbiamo chiamato l'ID (downloads-backup) e imposta il percorso. Non fare clic su Salva. Fai clic su (Condivisione) nella riga in alto per continuare:

Ora in (Condivisione) pannello, fare clic sul dispositivo remoto con cui condividere. Nel nostro esempio di seguito, è (nodo di peering 2), quindi fai clic su Salva per continuare.

Ora in (nodo di peering 1) , noterai la scansione della cartella stessa, il che va bene, ora torna al (nodo di peering 2) e vedrai un nuovo popup con (nodo di peering 1) voler inviare i (Download) directory. Fare clic su Aggiungi:

Ora verrà visualizzato un nuovo popup su (nodo di peering 2) , qui puoi modificare il tuo percorso se necessario, oltre a regolare qualsiasi altra opzione nel riquadro superiore. Per ora, fai clic su Salva per vedere l'inizio del processo di sincronizzazione:

Ora potrebbe volerci circa un minuto, ma i dispositivi dovrebbero iniziare a sincronizzarsi, esempio di seguito:

Congratulazioni, hai utilizzato con successo Syncthing per sincronizzare due dispositivi! Nota se vedi il seguente errore (Impossibile creare l'indicatore di cartella:mkdir .stfolder:file system di sola lettura) , vedi il passaggio successivo per correggere le autorizzazioni. Una volta corretto, riavvia il servizio di sincronizzazione e dovrebbe avviare il processo.

Configura le autorizzazioni di sincronizzazione

La sincronizzazione a volte può riscontrare problemi con l'invio e la ricezione tra nodi remoti. Con i sistemi Linux, puoi installare il pacchetto (setfacl) immettendo il seguente comando:

sudo apt install acl

Quindi esegui il seguente comando con il tuo nome utente:

sudo setfacl -R -m u:username:rwx /folder/path/

Se hai costantemente problemi con questo dato che i file cambiano costantemente, puoi impostare un processo cron come di seguito:

sudo crontab -e

Quindi aggiungi le autorizzazioni di sincronizzazione ogni 5 minuti:

*/5 * * * * sudo setfacl -R -m u:username:rwx /folder/path/ -n

La seconda funzionalità consiste nell'impostare (Ignora autorizzazioni) nella sezione (Avanzate) opzioni in Syncthing WebUI. Questo può anche risolvere i problemi, ma tieni presente il passaggio precedente con (setfacl) molto probabilmente dovrà essere fatto insieme a questa funzione.

Configura cartelle di sola invio e di sola ricezione

Un'ottima funzionalità di Syncthing è che puoi specificare i nodi di peering da inviare e ricevere. Tuttavia, possono anche inviare solo e solo ricevere, offrendoti la massima flessibilità. Per fare ciò, apri (Avanzate) nel pannello superiore della cartella attualmente sincronizzata e vedi (Tipo di cartella) per cambiare per ricevere, inviare o entrambi.

Ricordati di fare clic su Salva.

Configura sincronizzazione Regola gli intervalli di scansione

Se non è necessaria la sincronizzazione per controllare costantemente le modifiche e liberare la CPU, è possibile disabilitare (Guarda modifiche) nella sezione (Avanzate) nella modifica della cartella di sincronizzazione tra i dispositivi.

Inoltre, per impostazione predefinita, viene programmata una nuova scansione completa per ogni ora per sincronizzare le modifiche ogni ora ed essere regolate più o meno a lungo.

Configura Nginx come proxy inverso per la sincronizzazione

Supponiamo che tu voglia impostare Syncthing su Nginx come proxy inverso per accedere al tuo server. La guida mostrerà come configurare utilizzando la porta 80. Segui l'esempio seguente:

Innanzitutto, installa il PPA Nginx personalizzato da Ondřej Surý, che è aggiornato con funzionalità migliori:

Stabile:

sudo add-apt-repository ppa:ondrej/nginx && sudo apt update -y

Linea principale:

sudo add-apt-repository ppa:ondrej/nginx-mainline && sudo apt update -y

Quindi, installa Nginx:

sudo apt install nginx-core nginx-common nginx nginx-full -y

Successivamente dovrai creare un file host virtuale. Per fare ciò, esegui il seguente comando:

sudo nano /etc/nginx/sites-available/syncthing.conf

Aggiungi il codice seguente in (syncthing.conf) file:

server {
  listen 80;
  server_name syncthing.example.com;

  access_log /var/log/nginx/syncthing.access.log;
  error_log /var/log/nginx/syncthing.error.log;
  location / {
    proxy_pass http://127.0.0.1:8384;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  }
}

Per salvare il file (CTRL+O) quindi (CTRL+X) uscire. Quindi, verifica la tua configurazione Nginx eseguendo il comando:

sudo nginx -t

Se tutto è corretto senza errori, otterrai il seguente output:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Per terminare, ricarica o riavvia il tuo servizio Nginx:

sudo systemctl restart nginx

Da questo punto, puoi accedere al server Syncthing utilizzando l'URL http://syncthing.example.com.


Ubuntu
  1. Come installare Docker su Ubuntu 18.04

  2. Come installare Apache su Ubuntu 18.04

  3. Come installare PHP 7.4 e 8.0 su Ubuntu 18.04 o 20.04

  4. Come installare MariaDB 10.4 su Ubuntu 18.04

  5. Come installare e configurare Varnish su Ubuntu 20.04?

Come installare e configurare MRTG su Ubuntu 18.04

Come installare e utilizzare Syncthing su Ubuntu 20.04

Come installare e configurare DNS su Ubuntu

Come installare e configurare Kubernetes su Ubuntu

Come installare Syncthing su Ubuntu 20.04 LTS

Come installare e configurare Memcached su Ubuntu