software di sincronizzazione di file molto veloce

Sto cercando un software di sincronizzazione di file molto veloce per sincronizzare i dati su più macchine, in più siti. Qualcosa come Dropbox o Spideroak.

Il software deve soddisfare i seguenti due criteri:

1) e più importnte. Dovrebbe essere molto veloce. Se cambio un file, il caricamento sul server dovrebbe iniziare entro 10 secondi. Le altre macchine collegate dovrebbero iniziare a scaricarla appena ansible appena il caricamento viene completato. Se il software supporrebbe di bloccare il file in questione, sarebbe bello.

2) dovrebbe supportre la crittografia lato client.

Dropbox non è adatto a causa del secondo punto, Spideroak non è adatto a causa del primo (a volte ho ottenuto risultati molto deludenti).

Quali strumenti di sincronizzazione file utilizzate? Cosa puoi raccomandare?

EDIT: I computer sono tutti sisthemes Linux in esecuzione.

EDIT2: Ho 4-5 siti in mente. Purtroppo non hanno caricamenti enormi. Il peggiore (il mio ufficio domestico ;-)) ha solo una connessione DSL con upload di 80 kb / s. Mettendo insieme qualcosa non è un'opzione, poiché cerco una soluzione con costi e affidabilità moderati ;-). Ho accesso alla radice a tutti i clienti in questione.

  • Back-up di IMAP non aggiornato - ripristinare le email da Client?
  • Account utente del laboratorio
  • Rsync over sshfs salta i nomi dei file che iniziano con il sottolineatura
  • Come eliminare i file più vecchi di 30 giorni con robocopy?
  • Sincronizzare gli utilizzi in Active Directory
  • Migliorare la velocità di scansione RSYNC / approccio alternativo?
  • Subversion commit e sincronizzazione bidirezionale
  • sincronizzazione delle cartelle locali
  • 5 Solutions collect form web for “software di sincronizzazione di file molto veloce”

    Raccommand GlusterFS . È un filesystem NAS che collega diversi server in un file system. È quindi ansible montarlo tramite fusibile. Potresti anche colbind i server tramite una soluzione IPsec, per esempio, ad esempio Openswan . Per aggiungere sicurezza.

    Da wikipedia su GlusterFS:
    GlusterFS ha un componente client e server. I server vengono generalmente distribuiti come mattoni di archiviazione, con each server che esegue un demone glusterfsd per esportre un file system locale come volume. Il process client glusterfs, che si connette ai server con un protocollo personalizzato su TCP / IP, InfiniBand o SDP, compone volumi virtuali compositi da più server remoti che utilizzano traduttori impilabili. Per impostazione predefinita, i file vengono memorizzati interi, ma è anche supportta la rowtura di file su più volumi remoti. Il volume finale può essere quindi montato dall'host client tramite il meccanismo FUSE o acceduto tramite la libreria client libglusterfs senza incorrere nel sovraccarico del filesystem FUSE. La maggior parte delle funzionalità di GlusterFS è implementata come traduttori, tra cui:

    • Mirroring e replica basati su file
    • Striscia a base di file
    • Bilanciamento del carico basato su file
    • Failover del volume
    • pianificazione e cache del disco
    • Quote di stoccaggio

    Quanti siti stanno parlando? Personalmente guarderei a impostare qualcosa con i miei propri server usando qualcosa come il file system DRBD o DFS (Windows utilizza DFS come file system di sincronizzazione in networking, DRBD è una soluzione Linux RAID 1 over IP), quindi i client si connettono a una condivisione sui server (o un'unità mappata) e tutto verrà sincronizzato automaticamente.

    Come un secondo argomento di ricerca, directory rsync tra server su SSH.

    Altrimenti si potrebbe guardare a rotolare la propria applicazione e set di script per fare quello che stai cercando che probabilmente non sarebbe semplice, economico o facile.

    Senza conoscere specifiche (numero di siti, controllo nei siti client che hai, width di banda, ecc.) È difficile fare altri suggerimenti.

    EDIT – DRDB sembra ottimizzato per 2 server; Non so cosa avrebbe bisogno di "catena" i dati. Inoltre stai sincronizzando i dati da un server all'estero? Avete pianificato la priorità dei routes di sincronizzazione (come in un repo centrale che tutto si sta sincronizzando o sei decentrato nel where e da where i dati verranno e da where vai? Oppure sono questi uffici esterni che sincronizzano le cose a un server centrale?) Potresti guardare un'installazione piuttosto complicata quando fatti queste cose. Dovresti guardare sia un modo per eseguire un'utilità di sincronizzazione come suggerito da http://billboebel.typepad.com/blog/ 2006/11 / data_mirroring_.html o rsync in momentjs particolari o trovare un file system basato su cluster che gestisce più coetanei "primari" attivi senza abbastanza sovraccarico che abbatte la width di banda.

    Non hai menzionato la dimensione dei dati da modificare o l'affidabilità della tua connessione; se hai a che fare con il documento medio, avrai diverse potenzialità di corruzione e problemi rispetto a se si sta modificando grafica di grandi size.

    Data la complicazione di questo tipo di installazione che stai guardando, vorrei anche suggerire di considerare una soluzione di accesso remoto come potenziale fix. Se stai eseguendo Linux non è assolutamente imansible disporre di un server centrale nell'ufficio "primario" e abbonare le persone con terminali SSH remoti e eseguire sessioni direttamente dal server, come una soluzione Windows Terminal Services. Questo ti dà più controllo sul modo in cui i dati vengono eseguiti in backup, acceduti e controllati in modo sicuro. Ma dovresti avere una connessione decente per farlo. Collegamenti molto veloci consentirebbero connessioni SSH con X-forwarding, connessioni mediocre e veloci, è ansible impostare una soluzione terminal più remota più simile a VNC (tunnel criptato / VPN) per le connessioni server <->.

    Un'altra considerazione è la VPN in un sito centrale e la directory di assembly tramite NFS o un module FUSE come SSHFS. Ancora una volta, dipende dalla tua width di banda e dalla stabilità della connessione.

    Se si desidera mantenere sincronizzati i dati come una soluzione, potnetworking ancora avere problemi di block potenziali e aggiornare i dati con le condizioni di gara da considerare in modo da poter ricercare i migliori filesystem che possono gestire automaticamente tale situazione.

    Se stai utilizzando Windows per i tuoi clienti e server, ti suggerisco di indagare su File System Distributed. Prendi anche un'occhiata alla cache offline con EFS. Se non utilizzi Windows, faicelo sapere cosa stai utilizzando.

    Modifica: Guarda tsync (beta) per Linux.

    ChironFS è un filesystem distribuito progettato per la replica. Non si occupa della crittografia, ma è ansible utilizzarlo sotto un file system crittografato come EncFS se si desidera che each client gestisca la crittografia o SSHFS per proteggere i dati sul filo. Non so se sarà adatta per performance.

    Potresti voler guardare Unison http://www.cis.upenn.edu/~bcpierce/unison/ ma una soluzione dei filesystem potrebbe adattarsi meglio alle tue esigenze.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.