Sync

Marius '95

troubleShooter
Opera Link se desfiinteaza.
Am nevoie sa sincronizez niste directoare intre doua calculatoare, posibil si un telefon sau tableta in viitor, prin intermediul unui server proprietate personala. Exclud din start serviciile cloud alte diversilor provideri.

Ce optiuni am?
 
Afara ploua. Si fara nici o legatura cu asta, ce server ai si ce stie sa faca? Exista solutii de sincronizare native in Windows si unele au chiar si clienti pentru alte platforme, dar la modul general "am doua calculatoare si un server, e secret ce OS si ce versiune au, vreau sa le sincronizez" nu exista solutie optima decat sa iti scrii singur un script de sincronizare; as fi zis un filtru peste sistemul de fisiere care sa intercepteze orice scriere si sa o sincronizeze si pe serverul tau, dar poate folosesti un sistem de fisiere propriu care nu accepta asa ceva.
 
Am un server cu win2003 si un router cu openwrt. Oricare.
Clienti cu windows acum, dar linux intr-un viitor cand nu vor mai fi driveri pentru XP.
 
Pentru ca de 2 ani tot incerc sa renunt la acel windows...
Faptul ca e disponibil nu inseamna ca e si preferat.
 
Am o problemă similară, dar nu exact pentru a avea sincronizare în timp real între mai multe terminale, ci pentru a avea backup periodic pentru fișierele noi din telefoane mobile (săptămânal) și calculatoare/laptop-uri (săptămânal) pe un NAS QNAP din LAN.

Soluția ar trebui să permită un client instalat pe Android și Windows (nu neapărat același producător), și care să poată avea mai multe foldere locale pentru sincronizare în anumite condiții (ora 2 noaptea, zilnic, dacă telefonul e conectat la WiFi și pus la încărcat).

Soluția ar trebui să poată sincroniza doar fișierele noi și cele modificate, dar pentru asta probabil ar fi o idee bună să existe și o componentă pe server care să poată face checksums sau alte chestii pentru identificarea diferențelor într-un mod mai eficient decât ar face clientul prin rețea.

Mă interesează și eficiența protocolului folosit. FTP? SFTP? Samba? WebDAV? NFS?

Momentan am încercat soluția QNAP-ului, numită QSync - are un modul pe server și client pentru Android, Windows, iOS. Aplicația client e utilizabilă, da' rudimentară rău. Pot alege un singur folder per device care să se sincronizeze cu serverul, ceea ce pentru un Android e stupid fiindcă sunt mai multe foldere pe care vreau să le sincronizez și nu le pot muta (DCIM și WhatsApp din memoria internă, alte foldere pe cardul extern) și nici nu vreau să sincronizez tot filesystem-ul. Apoi, în caz de conflict, am doar opțiunea de „if file exists, overwrite or skip” fără a compara data modificării sau dimensiunea, deci fie fac trafic (radio) de-a proasta pentru mii de fișiere și 'jde giga, fie rămân fără fișiere actualizate.

Apoi am încercat să instalez în QNAP aplicația WebDAV, ca să descopăr că de fapt e client pentru a face backup/restore de pe NAS spre vreun cloud provider. Meh. Alte aplicații din categoria backup/sync sunt tot așa. :( Poate cu excepția ownCloud care pare mai mult un alt fel de browser front-end pentru acces la fișiere.

Am găsit și o altă soluție oferită de GoodSync.com, care constă dintr-o aplicație server nativă pentru QNAP și clienți Android/Windows/Linux/iOS cu comunicație peer-to-peer sau client-server folosind un protocol proprietar. Totul minunat până aici, dar 1) serverul necesită cont pe GoodSync și o parte din configurare se face prin Control Center-ul cloud-based, spre care aplicația server își deschide porturi outbound și inbound prin UPnP, și 2) fiecare instanță server și client se licențiază cu 45$ altfel sincronizarea se oprește după 100 de fișiere. Flit.

Momentan am ajuns la FolderSync, aplicație pentru Android (free cu full screen ads din când în când, sau vreo 3€ per device), care permite sincronizarea cu o gârlă de cloud providers dar și local prin FTP/SFTP/Samba (v1)/WebDAV, are cam toate setările pe care le vreau, și pot defini în client mai multe foldere pentru sincronizat, fiecare cu propria destinație și programare a declanșării etc. Am folosit SMB pe server, dar nu știu dacă e mai bună decât FTP. Va trebui să găsesc un client potrivit pentru Windows.

Mă așteptam să fie mai multe opțiuni cu NFS pentru Android, că mno, linux la linux, dar fie n-am căutat bine, fie nu prea există.

Aveți ceva recomandări?
 
Resilio pare a fi cloud-based, prin peer-to-peer și internet, cu sincronizare instantanee a datelor. E opus față de ce caut eu: exclusiv în rețea privată, cu server propriu, cu backup/sync programat.
 
Dacă poate, transferă prin rețea locală. Dacă nu poate, transferă prin exterior. Nu poți să-i zici ușor să facă doar una din ele. Chiar m-am luptat un pic cu Resilio să nu mai folosească "rețeaua" într-un caz, are niște setări dar nu sunt bine documentate, până la urmă am folosit setări de firewall/router. Totuși nu mi-e clar cum face discovery-ul.
 
Teoretic traficul e criptat. Eu sincronizez vreo 6TB prin el, nu pare să se fi dus și prin alte părți :).
 
Resilio pare a fi cloud-based, prin peer-to-peer și internet, cu sincronizare instantanee a datelor. E opus față de ce caut eu: exclusiv în rețea privată, cu server propriu, cu backup/sync programat.
Folosește și tu Dropbox ca toți oamenii și înregistrează home made pr0n doar pe devices fără wi-fi? :D
 
Cloud nu e răspunsul la orice. Pentru unele chestii am Dropbox și Google Drive. Pentru altele prefer un NAS neaccesibil din internet, cu capacitate mult mai mare decât îmi poate oferi un cloud storage la un preț rezonabil, și fără dependența de o conexiune la net slabă pe care nu o pot influența. Tu ai face system snapshots lunare pe discuri cu 350GB+ ocupați printr-o conexiune DSL de 14Mbps? Oh wait întreb persoana care are pegging pe bucket list, nevermind that :D
 
Se vede că ești măritat :D

Ai menționat că vrei anumite foldere, nu system snapshots lunare. Interesant că Android nu are backups locale, iTunes încă poate face backups locale prin cablu sau wifi pe un computer din LAN.
 
Când ai mai multe PC-uri e cam best practice să ai (și) snapshots, pentru o restaurare fără dureri de cap în caz de defect. Altfel e masochism să reinstalezi totul pe curat și să pui doar fișierele înapoi, ca apoi să auzi juma' de an "dar desktopul nu arată ca înainte, și aici aveam nuștiuce". Dar oricum imaginea prin rețea o face aplicația de backup pe NAS, iar dacă tot ai NAS atunci ce-ar fi să-l folosești și pentru file backups/sync, că n-ai nevoie de toate să fie instantaneu disponibile de oriunde de pe net ca să se justifice un cloud.

Unele aplicații Android știu să-și facă backup local, pe cardul extern. Două probleme. 1) Android mai recent permite configurarea cardului drept extensie a memoriei interne, și cu asta nu mai poate fi scos și folosit separat, deci în esență telefonul nici nu "vede" că ar exista un card amovibil pe care să facă backup. Și 2) degeaba ai backup local atunci când telefonul se fufu din alte motive, sau e pierdut/furat cu totul. Copia locală a datelor nu intră în definiția de backup :D

Meanwhile le-am scris la QNAP și mi-au răspuns relativ repede că vor băga sugestia mea rezonabilă în backlog pentru dezvoltare, dar nu promit când și dacă va fi implementată. Dar tbh aș prefera ceva aplicație care să folosească servicii și protocoale standard de rețea.
 
Back
Top