Quali sono le buone utilità di sincronizzazione bidirezionale e in tempo reale tra la cartella locale Mac e il server web?

2

Ho un iMac che è connesso alla mia rete locale (e, successivamente, a Internet) con una cartella denominata DocShare .

Ho un server web ospitato fuori sede tramite una società di hosting, con una cartella simile chiamata DocShare online che ospita un repository online di file che sarebbero correlati a DocShare cartella sul mio iMac. Questo server supporta WebDAV, (S) FTP, SSH, ecc. Per il trasferimento di file.

Vorrei amare per trovare un modo per avere queste due cartelle, una localmente sul mio iMac e una sul mio server, sincronizzare in modo che ogni volta che carico un file sul DocShare , apparirà sul mio DocShare online e viceversa. Sarebbe bello se le modifiche ai file potessero riflettersi, e se ho cancellato / modificato / creato un file su entrambi i lati , si rifletterebbe sulla cartella opposta.

Quindi, sarebbe la sincronizzazione in tempo reale con una connessione costante al server web, o un processo di sincronizzazione pianificato ogni intervallo di tempo. Finora, ho trovato una manciata di programmi per Windows, ma nessuno che faccia questo per Mac.

Se possibile, mi piacerebbe vederlo in una GUI, con un possibile add-on della riga di comando (non necessariamente la riga di comando in modo esclusivo). Per favore fatemi sapere quali opzioni possibili ho, o se sono tutto lavato e non c'è niente che faccia questo genere di cose.

    
posta Hunter E. 27.05.2014 - 20:00
fonte

2 risposte

2

Unison è il mio strumento di go-to per una sincronizzazione di file bidirezionale. (I binari del Mac sono disponibili su il sito di un contributore .) Tendo a considerarlo come più interattivo, configurabile, e la versione bidirezionale di rsync . Dato che è un buon cittadino * nix, può essere automatizzato tramite il tuo metodo preferito. È open source e ha porte per le principali piattaforme OS.

Sfortunatamente Unison non è più in fase di sviluppo attivo , che potrebbe essere o meno un problema per te. (Penso che l'ultima volta che l'ho usato era sotto il 10.6.), Ma si adatta bene alle tue esigenze:

  • Gestisce la sincronizzazione bidirezionale e funziona alla grande su file e set di dati di grandi dimensioni.
  • Può essere eseguito in modo completamente automatico o interattivo (in cui è possibile verificare e confermare ogni modifica).
  • Funziona su SSH.
  • Le interfacce GUI e CLI sono disponibili. (FWIW, la versione della GUI per Mac, anche se bella / comoda, era sempre leggermente instabile per me.)
  • La sua documentazione per l'utente finale è eccellente e completa.
  • Ha opzioni di configurazione per una moltitudine di casi d'uso.
  • Ha un principio di progettazione di lasciare le cose in uno stato buono in ogni momento, il che rende più facile il ripristino in caso di perdita della connessione in qualsiasi momento.

Ed ecco il principale punto di vendita per usarlo (almeno per me):

Per le destinazioni SSH remote, accede alla macchina remota, esegue una copia separata di Unison lì per cercare le modifiche, quindi riconcilia lo stato con la macchina locale per trasmettere solo i bit (o byte :-)) che differiscono, proprio come fa rsync . Ciò lo rende molto efficiente con la larghezza di banda, ed è anche in grado di mantenere cache del suo indice di file su ciascun lato per rendere più veloci le scansioni successive. Per i set di dati di grandi dimensioni, questo è un grande affare.

Esistono altri strumenti specifici per Mac per la sincronizzazione dei file, ma, IIRC, tendono a presumere che il filesystem sia locale e che siano molto inefficienti con larghezza di banda o molto presuntuoso riguardo alle "modifiche" dei file (metadati, dati effettivi) su grandi file / set di dati remoti.

Unison ha funzionato nel modo in cui ne avevo bisogno, era affidabile e mi ha reso sicuro di usarlo grazie alla sua eccellente documentazione. Grazie, Benjamin C. Pierce!

    
risposta data 27.05.2014 - 23:29
fonte
1

Trasmetti fornisce un'azione Automator che sincronizza una cartella locale con una cartella sul tuo server. Combinalo con le azioni della cartella e dovresti impostarlo, a meno che non stia leggendo la domanda sbagliata. Transmit supporta WebDAV e (S) FTP.

    
risposta data 27.05.2014 - 21:01
fonte