Ricerca nel sito web

Installa e configura Syncthing su CentOS 8/CentOS 7


Syncthing è una sincronizzazione continua di file open source utilizzata per sincronizzare file tra due o più computer in una rete. Questo tutorial è scritto per aiutarti a installare e configurare Syncthing su una macchina Linux CentOS 8/CentOS 7. Syncthing è facile da installare, gestire e fornisce un modo semplice per sincronizzare i file tra computer in una rete locale e su Internet.

Principi fondamentali di progettazione di Syncthing

Syncthing è costruito con gli obiettivi principali indicati di seguito.

  • Al sicuro dalla perdita di dati: protegge i dati dell'utente garantendo che i file dell'utente non vengano danneggiati.
  • Facile da usare: Syncthing dovrebbe essere accessibile, comprensibile e inclusivo.
  • Sicurezza contro gli aggressori: non consentire mai che i dati dell'utente siano soggetti a intercettazioni o modifiche da parte di soggetti non autorizzati.
  • Per privati: Syncthing consiste principalmente nel fornire al singolo utente una sincronizzazione dei file sicura, protetta e facile da usare.
  • Automatico: l'interazione dell'utente dovrebbe essere richiesta solo quando assolutamente necessaria.
  • Disponibile universalmente: Syncthing dovrebbe essere eseguito su tutti i computer comuni.

Installa Syncthing su CentOS 8/CentOS 7

Per CentOS e altre famiglie di distribuzioni RHEL Linux, non esiste un repository ufficialmente supportato che fornisca pacchetti RPM per l'installazione. Per questo motivo, scaricheremo e installeremo Syncthing su CentOS 8/CentOS 7 dall'archivio sorgente ufficiale.

Prendi l'ultima versione di Syncthing per il tuo sistema operativo:

curl -s https://api.github.com/repos/syncthing/syncthing/releases/latest | grep browser_download_url | grep linux-amd64 | cut -d '"' -f 4 | wget -qi -

Decomprimere l'archivio scaricato.

tar xvf syncthing-linux-amd64*.tar.gz

Ci sarà un file binario chiamato syncthing nella cartella creata dall'estrazione. Copiamo il file binario nella directory /usr/local/bin.

sudo cp syncthing-linux-amd64-*/syncthing  /usr/local/bin/

Conferma che il file binario viene copiato controllando la versione di Syncthing.

$ syncthing --version
syncthing v1.23.4 "Fermium Flea" (go1.20.2 linux-amd64) [email  2023-04-05 13:25:55 UTC

Configura Syncthing per l'avvio automatico all'avvio

Utilizzeremo Linux Systemd per gestire il servizio Syncthing: consente agli utenti di avviare, arrestare, abilitare e disabilitare le unità di servizio.

Creiamo un nuovo file.

sudo vi /etc/systemd/system/[email 

Incolla il contenuto sottostante nel file.

[Unit]
Description=Syncthing - Open Source Continuous File Synchronization for %I
Documentation=man:syncthing(1)
After=network.target

[Service]
User=%i
ExecStart=/usr/local/bin/syncthing -no-browser -gui-address=0.0.0.0:8384 -no-restart -logflags=0
Restart=on-failure
SuccessExitStatus=3 4
RestartForceExitStatus=3 4

# Hardening
ProtectSystem=full
PrivateTmp=true
SystemCallArchitectures=native
MemoryDenyWriteExecute=true
NoNewPrivileges=true

[Install]
WantedBy=multi-user.target

Aggiorna l'elenco dei servizi systemd:

sudo systemctl daemon-reload

Abilita e avvia il servizio.

sudo systemctl start syncthing@$USER
sudo systemctl enable syncthing@$USER

Conferma lo stato del servizio.

$ systemctl status syncthing@$USER
 [email  - Syncthing - Open Source Continuous File Synchronization for root
   Loaded: loaded (/etc/systemd/system/s[email ; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2023-06-05 22:07:35 UTC; 2s ago
     Docs: man:syncthing(1)
 Main PID: 1635 (syncthing)
   CGroup: /system.slice/system-syncthing.slice/[email 
           ├─1635 /usr/local/bin/syncthing -no-browser -gui-address="0.0.0.0:8384" -no-restart -logflags=0
           └─1642 /usr/local/bin/syncthing -no-browser -gui-address="0.0.0.0:8384" -no-restart -logflags=0

Jun 05 22:07:36 cent7.mylab.io syncthing[1635]: 2023/06/05 22:07:36 failed to sufficiently increase receive buffer size (was: 208 kiB, wanted: 2048 kiB, got: 416 kiB). See https://git...for details.
Jun 05 22:07:36 cent7.mylab.io syncthing[1635]: [E3OLA] INFO: TCP listener ([::]:22000) starting
Jun 05 22:07:36 cent7.mylab.io syncthing[1635]: [E3OLA] INFO: Relay listener (dynamic+https://relays.syncthing.net/endpoint) starting
Jun 05 22:07:36 cent7.mylab.io syncthing[1635]: [E3OLA] INFO: QUIC listener ([::]:22000) starting
Jun 05 22:07:36 cent7.mylab.io syncthing[1635]: [E3OLA] INFO: Completed initial scan of sendreceive folder "Default Folder" (default)
Jun 05 22:07:36 cent7.mylab.io syncthing[1635]: [E3OLA] WARNING: Failed starting API: listen tcp: address tcp/8384": unknown port
Jun 05 22:07:36 cent7.mylab.io syncthing[1635]: [E3OLA] INFO: Detected 0 NAT services
Jun 05 22:07:36 cent7.mylab.io syncthing[1635]: [E3OLA] INFO: Relay listener (dynamic+https://relays.syncthing.net/endpoint) shutting down
Jun 05 22:07:36 cent7.mylab.io syncthing[1635]: [E3OLA] INFO: QUIC listener ([::]:22000) shutting down
Jun 05 22:07:36 cent7.mylab.io syncthing[1635]: [E3OLA] WARNING: Starting API/GUI: listen tcp: address tcp/8384": unknown port
Hint: Some lines were ellipsized, use -l to show in full.

Puoi anche utilizzare un account utente separato per avviare il servizio sostituendo $USER con il nome dell'utente.

Accesso all'interfaccia utente di sincronizzazione

La GUI di amministrazione di Syncthing viene avviata automaticamente da systemd ed è disponibile sull'indirizzo di ascolto configurato, porta 8384. Se l'opzione -gui-address="ip:port" non è fornito, il servizio verrà eseguito su https://localhost:8384/

$ sudo ss -tunelp | grep 8384
tcp    LISTEN     0      128    [::]:8384               [::]:*                   users:(("syncthing",pid=2194,fd=15)) ino:23328 sk:ffff9ede320e5280 v6only:0 <->

Per impostazione predefinita, l'interfaccia di amministrazione di Syncthing è configurata per consentire l'accesso remoto senza password.

Apri le impostazioni per impostare la password: Impostazioni > GUI

Ti verrà quindi richiesto di autenticarti.

Quando accedi alla GUI di Syncthing, dovresti vedere un'interfaccia come quella seguente:

Sincronizzazione dei dati tra due dispositivi con Syncthing

Per poter sincronizzare i dati tra due o più computer con

Sincronizzazione ID dispositivo

Ciò si ottiene scambiando gli "ID dispositivo". UN

Aggiunta dell'ID dispositivo di sincronizzazione

Per far comunicare tra loro i due dispositivi, fai clic su "Aggiungi dispositivo remoto" in basso a destra su entrambi e inserisci l'ID del dispositivo dell'altro lato.

Inoltre, seleziona le cartelle che desideri condividere. Il nome del dispositivo è facoltativo e puramente estetico. Se necessario, può essere modificato in seguito. Dopo aver fatto clic su "Salva", il nuovo dispositivo verrà visualizzato sul lato destro della GUI (sebbene disconnesso) e verrà mostrato un messaggio per indicare la necessità di un riavvio.

Nota: la cartella predefinita condivisa è ~Sync. Una volta apportate modifiche, come l'aggiunta di directory di sincronizzazione, assicurati di riavviare Syncthing su "Azioni" > "Riavvia".

Buona fortuna e buon divertimento! C'è più documentazione e se riscontri problemi sentiti libero di postare una domanda nel forum di supporto

Guide simili:

  • Come configurare la CLI di AWS S3 per lo storage di Ceph Object Gateway
  • Compressione e deduplicazione dello storage con Virtual Data Optimizer (VDO)
  • Configura l'archiviazione GlusterFS con Heketi su CentOS 8/CentOS 7

Articoli correlati: