서버와 임의의 파일 동기화


12

Droid2의 파일 (keepass .kdb)을 서버의 파일과 동기화하는 방법을 찾고 있습니다.

  • 연락처, 캘린더 등이 아닌 파일 시스템에있는 파일 일뿐입니다.
  • 밀거나 당기는 것이 아니라 양방향이 필요합니다. 서버가 변경되면 다운로드하고 Android가 변경되면 업로드하십시오. 예, 이로 인해 충돌이 해결 될 수 있습니다.

PC 사이에서 이것을 달성하기 위해 Unison 을 사용 하고 있지만 Android 용 Unison 클라이언트는 없습니다. Android에 OCaml을 설치하고 Unison을 실행하는 것에 대해 손을 found는 것을 발견했지만 네이티브 가기를 바라고 있습니다.

Botsync는 유망한 것처럼 들리지만 단방향입니다. 구성 할 때 업로드 또는 다운로드 여부를 선택합니다.

나는 sugarsync를 보았지만 이것이 KeePass 파일이라는 것을 감안할 때 내 서버에 보관하는 것을 선호합니다.


나는 sugarsync를 제안하려고했지만 ... 나는 우려를 이해한다
Daniel

sparkleshare.org를 살펴보십시오. 비교적 새로운 프로젝트, Android 클라이언트가 작동한다고 생각합니다.
Sparx

답변:


3

KeePass 비밀번호 데이터베이스에이 옵션을 사용하려는 경우 여기에서 다른 옵션을 고려할 수 있습니다. 이것은 다른 민감한 자료에는 적용되지 않지만 KeePass를 특별히 요청했기 때문에 다음과 같이하십시오.

  • 암호 (이미 가지고 있다고 가정) 키로 데이터베이스를 보호하십시오 . 이렇게하면 2 단계 인증 ( "알고있는 것"(암호 및 "있는 것"))이 제공됩니다. 암호 데이터베이스는 조각이 모두 있어야 잠금을 해제 할 수 있습니다 .
  • 키를 모든 장치의 로컬 저장소에 복사하고 눈에 띄지 않는 이름을 지정하십시오. 프로그램에 의해 생성 된 일부 구성 파일 또는 임의의 노이즈 파일처럼 보일 수있는 복잡한 디렉토리에 배치하는 것이 좋습니다.
  • 데이터베이스를 타사 스토리지 서비스에 업로드합니다 (Dropbox를 사용하지만 다른 옵션도 잘 작동합니다). 장치에서 서비스를 사용하려면 서비스에 Android 클라이언트가 있어야한다는 것은 말할 필요도 없습니다.

  • 키를 업로드 하지 마십시오. 다른 방법을 사용하여 필요한 장치에 키를 복사하십시오. 특히 Dropbox는 업로드 한 파일의 사본을 보관 한 다음 백업 목적으로 적어도 일주일 동안 삭제합니다 (물론 편리합니다. 인정해야합니다). 키가 이미 서버에있는 경우 일반 비밀번호보다 안전하지 않습니다. 보호 된 데이터베이스.

  • 키의 위치를 ​​기억하지 않도록 KeePass 클라이언트를 구성하십시오 (데이터베이스의 위치를 ​​기억하는 것이 좋습니다).

이런 방식으로 데이터베이스를 임의의 웹 사이트에 업로드 할 수 있으며, 어떤 이유로 든 암호가 손상된 경우 (예 : 키보드 로거), 키가있는 장치의 데이터베이스 만 사용할 수 있으며 이제는 실제로 파일이 키인 파일 만 사용할 수 있습니다 .

편의상 모바일 장치에서 키 전용 인증을 원할 수 있습니다 (모바일 장치에서 보안 암호를 입력하는 것이 지루하고 여기서 짧고 쉬운 것을 사용하고 싶지는 않습니다). 그러나이 경우 보안은 암호로 보호 된 데이터베이스보다 훨씬 낮으므로 권장하지 않습니다. 헤드에있는 암호 대신 장치에있는 "암호"(키 파일)를 사용하십시오 .

KeePass는 키, 암호 또는 두 가지 모두를 필요로하는 힌트를 제공하지 않습니다.


좋은 정보를 얻으려면 +1, passass 파일에 대해 pass & keyfile이 "충분"해야한다는 데 동의합니다. 앞으로 "동기화되는 프로그램이 있습니다"라는 대답이 나오길 바라면서 질문에 답하지 않습니다. 감사!
Jason Viers 2016

4

당신은 지금 당신이 좋아하는 것을 발견했을 수도 있지만 안드로이드에서 작동하는 단일 바이너리를 컴파일했습니다-당신이 말하고있는 손 흔들며 명령을 사용하는 것이 가능합니다-우분투 12.10에서 리눅스 소스를 크로스 컴파일하는 데 사용했습니다 안드로이드 NDK를 사용하고 코드를 약간 변경하면 이제 작동합니다. https://sites.google.com/site/keigoattic/ocaml-on-android 의 안내에 따라 몇 가지 작업을 수행해야합니다. unison 소스에 pty.c라는 파일이 있습니다. 다음 섹션을 찾으십시오.

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

define HAS_OPENPTY 1표시된대로 주석을 답니다 . 또한 ubase / util.ml을 열고 편집해야합니다.

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

여기에서 의견을 말하십시오 :

    (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 *))

...여기로!

그런 다음 Makefile을 편집해야합니다.

   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

그리고 # CLIBS+=-cclib -lutil그림과 같이 주석 처리하십시오.

그리고 모든 것이 효과가 있음을 기억할 수 있습니다. 한 번 컴파일 된 다른 단계는 안드로이드 시스템 파티션을 쓰기 가능으로 마운트하고 나머지 모든 쉘 명령이있는 / system 폴더에 단일 시스템을 복사하는 것입니다.

누군가에게 도움이되기를 바랍니다 ... 컴파일하는 데 많은 수면을 잃었습니다.


2

FolderSync로 요청한 내용을 정확하게 수행합니다. 많은 옵션과 기능을 갖춘 매우 훌륭한 소프트웨어입니다. 인증을 위해 키 파일과 함께 SSH를 통한 SFTP를 사용하는 개인 보관 용 대안으로 사용합니다. 로컬 복제본의 변경 사항을 자동으로 감지하고 즉시 업로드를 시작하도록 설정할 수도 있습니다. 내 휴대 전화에서 사진을 찍 자마자 서버에 사진을 업로드하는 데 사용하며 완벽하게 작동합니다.


2

ChC의 답변에 표시된 크로스 컴파일 루트를 따랐습니다.

Google Play에서 명령 줄을 다루지 않고 루팅하지 않고 UnisonSync 를 출시 했습니다 .

빠르게 실행되는 개념 증명에서 프로덕션 준비 앱에 이르기까지 예상보다 훨씬 많은 시간이 걸렸지 만 이제는 작동하며 발행물과 데이터 시트 저장소를 동기화하는 데 매우 편리합니다.


1
명령을 사용하는 것을 선호하는 사람들을 위해 지침을 통합하여 어느 시점에서 크로스 컴파일하고 바이너리 바이너리 / 드롭 베어를 어딘가에 넣을 것입니다.
Dan

1

sshfs로 android를 마운트하여 unison을 사용합니다. SSH 서버로 SSHDroid를 사용 합니다 .

그러나 sshfs와의 통합은 실제로 느립니다. 하나의 파일 만 있으면 문제가되지 않습니다.


0

나는 이것을하는 네이티브가 무엇인지 모른다. 많은 파일 동기화 응용 프로그램이 있지만 내가 본 모든 응용 프로그램은 단방향이거나 사용자가 전화에서 클라우드로 파일을 수동으로 동기화하는 데 의존합니다. Dropbox API를 사용하여 수행하려는 작업이 가능해야하지만 동기화해야하는 특정 파일을 감시하는 사용자 지정 앱을 기꺼이 만들지 모르겠습니다.


사용자 지정 앱 경로를 고려했지만 그렇게하면 드롭 박스가 아닌 기본 Unison 클라이언트를 작성하게됩니다 (따라서 서버에 유지됩니다).
Jason Viers

0

시장 조사 에서 FTP를 통해 파일을 동기화한다고 주장하는 파일 동기화 및 파일 자동 동기화를 지원하는 aFileSync 가 공개 되었습니다 . FTP 서버를 직접 실행해야합니다.

SK Sync 도 있지만 사용자는 혼합 된 결과를보고했습니다.

분명히, 이러한 프로그램 / 앱을 시도하기 전에 PC / 서버와 Android 장치 모두에서 파일을 백업하십시오.


aFileSync는 내가 원하는 모든 동작을 가지고있는 것처럼 들립니다. 리뷰가 약간 무섭기 때문에 FTP 서버가 어떻게 작동하는지 설정해야합니다.
Jason Viers 2016

-1

Android에서 파일을 동기화하려면 내 앱 BotSyncPlus 의 새 버전입니다 . BotSync에 대해 쓸 때 업로드 또는 다운로드를위한 구성은 하나뿐이었습니다. 그러나 이제 다중 구성이 가능한 새 버전의 BotSyncPlus를 사용할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.