Dropbox 및 기호 링크를 사용하여 여러 홈 폴더 동기화

Dropbox 및 기호 링크를 사용하여 여러 홈 폴더 동기화

여러 컴퓨터를 Dropbox와 동기화 상태로 유지하기 위해 다음을 시도했습니다.

방법 A.

- 컴퓨터 1: Dropbox 설치, Dropbox 폴더: /Dropbox/
- 컴퓨터 1: 이 폴더에 홈 폴더에 대한 심볼릭 링크 생성

   $ln -s /home/ /Dropbox/

- 컴퓨터 2: dropbox 설치, dropbox 폴더: /Dropbox/(컴퓨터 1의 파일로 채워짐)
- 컴퓨터 2: 동일한 로컬 파일에 대한 심볼릭 링크로 파일 덮어쓰기 시도

$ln -sfn /home/ /Dropbox/
  ln: `/Dropbox/home': cannot overwrite directory

따라서 이 접근 방식은 실패합니다. 오류 수정을 위한 제안이 있는 사람이 있습니까? 아니면 다른 방법인가요? 지금까지 내가 생각해낸 접근 방식은 다음과 같습니다.

방법 B. 모든 파일을 재귀적으로 심볼릭 링크하는 스크립트를 작성할 수 있지만 새 파일을 가져오려면 스크립트를 실행해야 하기 때문에 그런 방향으로 가고 싶지 않습니다.

방법 C. rsync를 사용하여 홈 폴더와 Dropbox 폴더를 동기화합니다. 자동으로 업데이트되지 않기 때문에 마음에 들지 않습니다. 업데이트하려면 rsync를 호출해야 합니다. 매분 실행되는 cronjob에 rsync를 넣는 것은 이상적인 솔루션처럼 보이지 않습니다.

누구든지 방법 A를 수정하거나 방법 D를 제안하거나 방법 B 또는 C를 채택하도록 설득하는 데 도움을 줄 수 있습니까?

답변1

Dropbox가 작동할 디렉터리를 지정하는 방법이 실제로 있지 않나요? Dropbox에 /home을 사용하라고 지시할 수는 없나요?

그렇지 않은 경우 심볼릭 링크를 완전히 건너뛰고 여러 바인드 마운트를 사용하여 이를 수행할 수 있습니다. 다시 말해서:

mount --bind /home /Dropbox

두 컴퓨터 모두에서.

답변2

나는 방법 A의 문제에 대한 해결책을 생각했습니다.

- 컴퓨터 2: 알림 아이콘을 마우스 오른쪽 버튼으로 클릭하고 '동기화 일시 중지'를 선택하여 Dropbox 동기화를 일시 중지합니다.
- 컴퓨터 2: Dropbox에 있는 모든 파일을 삭제합니다. 선택적으로 해당 파일을 홈 폴더로 이동하고 로컬 파일을 덮어쓰지만 여기서는 두 경우 모두 파일이 삭제됩니다. 동일)
- 컴퓨터 2: 심볼릭 링크는 컴퓨터 1에서와 마찬가지로 dropbox 폴더에 있는 기본 폴더 링크입니다.

$ln -s /home/ /Dropbox/ 

-컴퓨터 2: Dropbox 데몬의 동기화를 재개합니다. 심볼릭 링크가 정확히 동일한 파일을 가리키므로 동기화가 발생하지 않아야 합니다.

메인 폴더는 그대로 유지되고 dropbox는 백그라운드의 다른 폴더에서 필요한 작업을 수행하기 때문에 이것이 좋은 해결책이라고 생각합니다. 그러나 그것은 매우 간단하지 않습니다.

또한 방법 A2를 생각했고 대안으로 여기에 공유하겠습니다.
- 컴퓨터 2: 홈 폴더에 있는 원본 파일을 삭제하고 홈 폴더에 있는 Dropbox 파일에 대한 심볼릭 링크를 만듭니다.

단점: 이로 인해 홈 폴더의 모든 아이콘에 링크 화살표가 표시됩니다.
이제 홈 폴더에 파일 대신 심볼릭 링크가 있으므로 파일 작업을 수행할 때 이를 알아야 합니다.

관련 정보