Słowo kluczowe: synchronizacja


29 lipca 2024 (poniedziałek), 12:41:41

o SyncThing, bo to kawał dobrego softu

Takie coś napisałem, bo mi się chciało. GPT sprawdziło więc nie jestem już tego pewien.

Syncthing_Logo-svg 2024-07-28 o SyncThing - kawał dobrego softu

#1. Co to jest i do czego to służy

  1. To program, który w łatwy i bezpieczny sposób synchronizuje przez sieć zawartość katalogów na różnych urządzeniach. Katalog, choć tu nazywa się folderem, zawiera pliki.
  2. Architektura jest taka, że program działa także jako serwis (czyli w tle) i wykonuje swoje zadania. Informacje o bieżącej działalności oraz konfiguracji można uzyskać przez przeglądarkę internetową pod adresem http://localhost:8384, gdzie dostępne jest GUI działającego programu.
  3. Synchronizacja odbywa się pomiędzy dwoma lub więcej maszynami, na których uruchomiony jest proces Syncthing. W celu odnalezienia innych maszyn, z którymi ma się synchronizować, proces Syncthing potrafi przebijać się przez routery NAT. Co ciekawe, robi to w sposób niewymagający żadnej infrastruktury z publicznym adresem IP. Gdy już określimy, które maszyny mają się ze sobą łączyć, synchronizacja działa nawet pomiędzy dwoma telefonami po sieci GSM.
  4. Na Unixach i Linuxach można uruchomić Syncthing jako serwis, ale lepiej nie jako root, tylko jako serwis użytkownika (najlepiej przez systemd). Aby to wypróbować, można zalogować się dwa razy lub użyć narzędzia screen (kto używa, zrozumie). Można również uruchomić Syncthing jako root, ale lepiej unikać tego ryzyka.
  5. Syncthing jest dostępny nie tylko na Linuxa, ale także na macOS, iPhone'a i iPada. Istnieje również wersja na Androida, więc dostępność na Windows jest pewna. Na iOS aplikacja nazywa się Möbius, jest płatna, ale kosztuje tylko 29 zł. Warto ją kupić po przetestowaniu darmowej wersji i stwierdzeniu, że spełnia nasze potrzeby.

Jak to działa:

  1. Po zainstalowaniu urządzenie dostaje swój ID – bardzo długi, ponieważ ID jest kluczem i jest używany do szyfrowania. Łatwo go skopiować, można go również przekazać za pomocą kodu QR.
  2. Po zainstalowaniu aplikacji, pokazują się inne urządzenia, z którymi ma się synchronizować. Wystarczy podać ID i powinny się po chwili połączyć. Jest to duży krok w procesie instalacji. Ciekawa jest informacja o sposobie połączenia: może to być LAN, ale również połączenie przez dwa NAT jakiś QUIC WAN
  3. Następnie na każdym urządzeniu wskazuje się katalogi do synchronizacji. Po wskazaniu katalogu, proces tworzy w nim podkatalog .stfolder, a w nim plik .stindex.txt, w którym zapisany jest ID tego folderu.
  4. Następnie proces tworzy bazę plików w katalogu, tworząc ich sygnatury. Musi więc przeczytać wszystkie pliki, ale nawet dla dużych (kilkanaście GB) zasobów nie trwa to długo. Gdzie jest ta baza nie wiem - pewnie w swoich katalogach systemowych syncthing to trzyma.
  5. Potem wskazuje się, z którymi znanymi już urządzeniami chce się współdzielić ten katalog. Na drugim urządzeniu należy potwierdzić, wskazując katalog (folder) w lokalnym systemie plików.
    I to wszystko. Teraz można tylko patrzeć, jak pliki synchronizują się między urządzeniami.

I co jeszcze:

  • dobrze ustawić wyłączenia plików systemowych, które różne systemy wkładają w foldery i ukrywają przed wzrokiem. Te pliki powinny być zawsze lokane więc w wyłączeia dobrze wpisać:
    .DS_store???
    @eaDir
    .Tru,,,,
    bo po co informacje o wyglądzie ikonek w folderach Mac przenosić na Windows. Te wykluczenia zapisują się w pliku .stigore…..
  • Na iOS jest komercyjny Mobius - ten sam program ale obudowany tak aby działał w środowisku iOS. I działa, choć nie da się go ustawić aby działał w tle nie biorąc dużo prądu. Coś to niedopracowane jest.
  • W terminalu można wpisać:
    open ~/Library/Application\ Support/Syncthing/
    i widać pliki konfiguracyjne oraz bazę.

Tam mi się ten program spodobał, że wsparłem fundację kwotą 20€ a za jakiś czas też wesprę tak jak wspieram fundację od Thunderbirda i VLC.


Kategorie: _blog, domowe it


Słowa kluczowe: syncthing, synchronizacja


Komentarze: (1)

wojtek, July 29, 2024 12:47 Skomentuj komentarz


find /Volumes/SD-256 -name '.DS_Store' -type f -delete

Skomentuj notkę

Disclaimers :-) bo w stopce coś wyglądającego mądrze można napisać. Wszystkie powyższe notatki są moim © wymysłem i jako takie związane są ze mną. Ale są też materiały obce, które tu przechowuję lub cytuje ze względu na ich dobrą jakość, na inspiracje, bądź ilustracje prezentowanego lub omawianego tematu. Jeżeli coś narusza czyjeś prawa - proszę o sygnał abym mógł czym prędzej naprawić błąd i naruszeń zaniechać.