홈 네트워크에 있는 동안 모든 홈 디렉토리와 기타 항목을 랩탑에 마운트합니다. 노트북 연결이 끊어졌을 때 nfs 마운트의 로컬 복사본을 유지하는 방법이 있는지 궁금합니다.
한 가지 이점은 변경된 폴더와 파일 등을 병합하는 기능입니다.
답변1
오프라인 캐싱은 한 가지이지만 요구하는 것은 더 어렵습니다. 서버와 클라이언트 모두에서 파일이 수정되고 두 시스템이 연결되지 않은 경우 누군가 유지할 버전을 결정하거나 두 버전을 병합해야 합니다. 두 시스템이 다시 연결될 때 이런 종류의 사용자 입력을 요구하는 것은 파일 시스템 모델에 잘 맞지 않습니다.
몇 개 있어요NFS 캐싱 기능, 그러나 대부분은 액세스 속도를 높이기 위해 온라인 캐싱을 위해 설계되었습니다. 어느 쪽이든 파일을 수정할 때 서버와 클라이언트 간의 통신이 필요하므로 오프라인 시나리오에는 적합하지 않습니다. 다음에도 적용됩니다.AFFS.
오프라인 작업을 지원하는 사용 가능한 분산 파일 시스템을 구축하려는 노력이 진행 중입니다.
- 끝많은 고급 기능, 특히 연결이 끊긴 작업을 지원하는 분산 파일 시스템입니다. 이는 비교적 오래된 프로젝트이고 상당히 성숙했으며 Linux 커널에 통합되었습니다. 클라이언트가 오프라인일 때 해당 수정 사항은 대기열에 저장됩니다. 클라이언트가 다시 연결되면 가능한 경우 이러한 수정 사항이 통합되며 Coda에는 충돌이 발생할 경우 병합을 지원하는 도구가 제공됩니다.
- 추무푸스비교적 새로운 프로젝트입니다. NFS와 같은 기존 분산 파일 시스템 위에 연결이 끊긴 작업을 추가합니다. 아직은 생산할 준비가 되지 않은 것 같아요.
나는 파일 시스템이 이 문제를 해결하는 데 적합한 장소라고 생각하지 않습니다. 충돌 처리는 어렵고 사용자 입력이 필요합니다.
저기술 솔루션의 경우 다음을 권장합니다.조화, 양방향 파일 동기화 장치. 서버와 노트북에 파일의 로컬 복사본을 보관하세요. 노트북을 연결한 후 연결을 끊기 전에 즉시 동기화를 실행하여 양쪽을 동기화하세요. Unison은 충돌이 있는지 알려줍니다(충돌이 없으면 자동으로 실행됩니다). 연결하고 연결을 끊을 때 항상 동기화하는 한 충돌은 발생하지 않습니다.
더 많은 서비스를 제공하지만 약간의 학습이 필요한 솔루션은분산 버전 제어소프트웨어. 각 머신에 저장소를 유지하고, 파일이 변경될 때마다 커밋하고, 가능하면 변경 사항을 푸시/풀하는 것을 잊지 마세요.
답변2
파일을 보존하고 동기화하려면 로컬 복사본을 만들고 rsync를 사용하여 NFS 마운트와 로컬 복사본을 동기화하면 됩니다.