Rasgele dosyaları bir sunucuyla senkronize etme


12

Bir dosyayı (keepass .kdb) benim Droid2 bir sunucuda bir senkronize tutmak için bir yol arıyorum.

  • Bu yalnızca dosya sistemindeki bir dosyadır - kişiler, takvim vb. Değil.
  • İki yönlü ihtiyacım var, sadece it veya çek değil. Sunucu değişirse, indirin, Android değişirse yükleyin. Evet, bu çözülmesi gereken çatışmalara neden olabilir.

PC'ler arasında bunu başarmak için Unison kullanıyorum , ancak android için Unison istemcisi yok. Android'e OCaml'ı yükleme ve bunun üzerinde Unison'u çalıştırma konusunda el sallama buldum, ancak yerel bir şey umuyorum.

Botsync umut vericidir, ancak tek yönlüdür - bir yapılandırma yaparken yükleme veya indirme olup olmadığını seçersiniz.

Sugarsync'i gördüm, ancak bunun KeePass dosyam olduğu göz önüne alındığında, kendi sunucumda tutmayı tercih ederim.


Ben şeker önerecekti ... ama endişeyi anlıyorum
Daniel

Bir göz atın sparkleshare.org - nispeten yeni bir proje, Android istemcisi çalışmalarında, inanıyorum.
Sparx

Yanıtlar:


3

Bunu KeePass şifre veritabanı için kullanmak istiyorsanız, burada başka bir seçenek düşünebilirsiniz. Bu, diğer hassas malzemeler için işe yaramaz, ancak özellikle KeePass için sorduğunuzdan, yaptığım şey:

  • Veritabanını (zaten varsayalım) şifresiyle ve bir anahtarla koruyun . Bu size iki faktörlü bir kimlik doğrulama sağlar ("bildiğiniz bir şey" - şifreniz ve "sahip olduğunuz bir şey" - anahtarınız). Parola veritabanının kilidi ancak her iki parça da yerinde olduğunda açılabilir .
  • Anahtarı tüm cihazlarınızın yerel depolamasına kopyalayın ve göze çarpmayan bir ad verin. Tercihen, bir program tarafından oluşturulan bazı yapılandırma dosyası veya rastgele bir gürültü dosyası gibi göründüğü kalabalık bir dizine koyun.
  • Veritabanınızı üçüncü taraf bir depolama hizmetine yükleyin (Dropbox kullanıyorum, ancak diğer seçenekler de işe yarayacaktı). Cihazınızda kullanmak istiyorsanız hizmetin bir Android istemcisi olması gerektiğini söylemeye gerek yok.

  • DO DEĞİL orada anahtar yükleyin - İhtiyacınız cihazlara kopyalamak için başka bir yöntem kullanın. Dropbox özellikle yüklediğiniz dosyaların bir kopyasını tutar ve daha sonra yedekleme amacıyla en az bir hafta boyunca siler (oldukça uygun, itiraf etmeliyim), ancak anahtarınız zaten sunucudaysa, normal bir şifreden daha güvenli değildir. korumalı veritabanı.

  • KeePass istemcilerinizi anahtarın konumunu hatırlamayacak şekilde yapılandırın (veritabanının konumunu hatırlamak iyidir).

Bu şekilde, veritabanınızı rastgele bir web sitesine yükleyebilirsiniz ve parolanız herhangi bir nedenle (örneğin klavye kaydedicileri) güvenliği ihlal edilmiş olsa bile, veritabanını yalnızca anahtarı olan cihazlardan kullanabilirsiniz VE şimdi hangi dosya aslında anahtardır .

Kolaylık sağlamak için, bir mobil cihazda yalnızca anahtar kimlik doğrulaması yapmak isteyebilirsiniz (güvenli şifreler bir mobil cihazda yazmak sıkıcıdır ve açıkçası burada kısa ve kolay bir şey kullanmak istemezsiniz). Ancak buna karşı öneriyorum, bu durumda güvenlik parola korumalı bir veritabanından bile daha düşüktür - kafanızda bulunan bir parola yerine, cihazınızda bulunan bir "parola" (anahtar dosyası) kullanırsınız. .

KeePass, anahtar, şifre veya her ikisini de gerektirdiğine dair herhangi bir ipucu vermez - ki bu sizin yararınıza çalışır.


+1 iyi bilgi için pass & keyfile bir keepass dosyası için "yeterli" olması gerektiğini kabul ediyorum. Gelecekte "burada senkronizasyon yapan bir program" yanıtı olacağını umarak soruyu cevapsız bırakıyorum. Teşekkürler!
Jason Viers

4

Şimdi mutlu olduğunuz bir şey bulmuş olabilirsiniz ama android üzerinde çalışan bir ikili ikili derledik - bahsettiğiniz el sallama talimatlarını kullanarak mümkündür - Ubuntu 12.10 içinde linux kaynağını çapraz derlemek için kullandım android NDK kullanarak ve kodda birkaç değişiklik ile şimdi çalışıyor. Https://sites.google.com/site/keigoattic/ocaml-on-android adresindeki talimatları uygulayın, ardından birkaç şey yapmanız gerekir. Unison kaynağında pty.c adlı bir dosya var - aşağıdaki bölümü bulun:

// openpty
#if defined(__linux)
#include <pty.h>
/*#define HAS_OPENPTY 1*/
#endif

ve define HAS_OPENPTY 1gösterildiği gibi yorum yapın . Ayrıca ubase / util.ml dosyasını açmanız ve düzenlemeniz gerekir:

let homeDir () =
  System.fspathFromString "/Your path here"

Buradan yorum yapın:

    (if (osType = `Unix) || isCygwin then
       safeGetenv "HOME"
     else if osType = `Win32 then
(*We don't want the behavior of Unison to depends on whether it is run
  from a Cygwin shell (where HOME is set) or in any other way (where
  HOME is usually not set)
       try System.getenv "HOME" (* Windows 9x with Cygwin HOME set *)
       with Not_found ->
*)
       try System.getenv "USERPROFILE" (* Windows NT/2K standard *)
       with Not_found ->
       try System.getenv "UNISON" (* Use UNISON dir if it is set *)
       with Not_found ->
       "c:/" (* Default *)
     else
       assert false (* osType can't be anything else *))

...Buraya!

Sonra da Makefile.Ocaml düzenlemek gerekir

   CWD=$(shell pwd)
    EXEC_EXT=
    WINOBJS=
    SYSTEM=generic
    # openpty is in the libutil library
    ifneq ($(OSARCH),solaris)
      ifneq ($(OSARCH),osx)
      #  CLIBS+=-cclib -lutil
      endif
    endif
    buildexecutable::
        @echo Building for Unix
  endif
endif

Ve # CLIBS+=-cclib -lutilgösterildiği gibi yorum yapın .

Ve her şeyin işe yaradığını hatırlayabildiğim kadarıyla. Bir kez derlenen diğer adım, android sistem bölümünüzü yazılabilir olarak monte etmek ve tümleşik komutların kalan tüm sistemlerini / system klasörüne kopyalamaktır.

Umarım bu birileri için yararlıdır ... Derlenmiş bir sürü uyku kaybettim.


2

FolderSync ile tam olarak istediğini yapıyorum. Çok sayıda seçenek ve özellik ile çok güzel bir yazılım parçası. Kimlik doğrulama için keyfile ile SSH üzerinden SFTP kullanarak kişisel dropbox alternatifi olarak kullanıyorum. Hatta yerel kopyalardaki değişiklikleri otomatik olarak algılayacak ve anında yüklemeyi tetikleyecek şekilde ayarlayabilirsiniz. Telefonumda, onları alır almaz sunucumdaki resimleri yüklemek için kullanıyorum ve sadece mükemmel çalışıyor.


2

ChC'nin cevabında belirtildiği gibi çapraz derleme kökünü de izledim

Google Play'de komut satırıyla (ve köklendirmeden) ilgilenmeden UnisonSync'i serbest bıraktım :

Hızla çalışan kavramın kanıtından üretime hazır bir uygulamaya kadar beklenenden çok daha fazla zaman aldı, ancak şimdi çalışıyor ve yayınlarımı ve veri sayfası havuzumu senkronize etmek için çok kullanışlı.


1
Komut satırını kullanmayı tercih edenler için, derhal bir noktada çapraz derleme ve ikili birleşme / bırakma bir yere koymak için talimatları birleştireceğim.
Dan

1

Android'i sshfs ile bağlayarak birlik kullanıyorum. Ssh sunucusu olarak SSHDroid kullanıyorum .

Ancak dikkatli olun, sshfs ile uyum gerçekten yavaştır. Tek bir dosya ile önemli olmamasına rağmen.


0

Bunu yapan yerli bir şey bilmiyorum. Birçok dosya senkronizasyonu uygulaması vardır, ancak gördüğüm tüm uygulamalar tek yönlüdür veya dosyayı telefondan buluta manuel olarak senkronize etmek için kullanıcıya güvenir. Yapmayı düşündüğünüz Dropbox API ile mümkün olmalı, ancak senkronize etmeniz gereken belirli dosyaları izlemeye devam eden kendi özel uygulamanızı oluşturmak isteyip istemediğinizi bilmiyorum


Özel uygulama rotasını düşünmüştüm, ancak bunu yaparsam bir dropbox yerine yerel bir Unison istemcisi yazıyor olurdu (bu yüzden sunucumda kalacak).
Jason Viers

0

Bir pazar araması, dosyaları FTP aracılığıyla senkronize ettiğini iddia eden ve ayrıca dosyaları otomatik senkronize etme desteğine sahip olan aFileSync'i ortaya çıkardı . Tek başına bir FTP sunucusu çalıştırmanız gerekir.

Ayrıca SK Sync de var , ancak kullanıcılar bununla karışık sonuçlar bildirdi.

Açıkçası, bu programlardan / uygulamalardan herhangi birini denemeden önce, lütfen dosyalarınızı hem PC / sunucuda hem de Android cihazınızda yedekleyin.


aFileSync, istediğim tüm davranışlara sahip gibi görünüyor. Değerlendirmeler biraz korkutucu ve nasıl gittiğini görmek için bir FTP sunucusu kurmak zorunda kalacağım.
Jason Viers

-1

Android dosyaları senkronize etmek için benim app BotSyncPlus yeni sürümüdür . BotSync hakkında yazdığınızda, yükleme veya indirme için yalnızca bir yapılandırma vardı. Ancak şimdi BotSyncPlus'ın çoklu yapılandırma olan yeni bir sürümü mevcut.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.