- iCloud Drive의 숨겨진 파일 충돌 때문에 최근 작성한 문단이나 코드 변경분이 사라졌고, 백업이 저장되기 전 손실이 발생함
- 충돌은 Mac과 iPhone에 같은 파일의 다른 버전이 있다고 판단된 상황이었지만, 문제 파일은 iPhone에서 열린 적이 없었음
- Dropbox는 충돌 파일을 별도로 남기지만, iCloud Drive는 파일 시스템에 드러내지 않아 충돌 처리 지원 편집기에서만 선택 팝업을 볼 수 있음
- Textifier, Xcode, Obsidian처럼 충돌 처리가 없는 편집기에서는 iCloud가 저장할 버전을 고르며, 시간이 지나면 올바른 버전이 백업에서 덮어써질 수 있음
- 중요한 데이터는 iCloud Drive 밖에 두고 핵심 파일은 Git 저장소로 변경을 감시하는 편이 안전하며, iCloud에 남겨야 하는 파일용 Cloud Cub도 개발 중임
iCloud Drive의 숨겨진 파일 충돌
- 문서 작성 중 방금 입력한 문단이 사라졌고, 앱 개발 중에는 Xcode가 이전까지 문제없던 코드에서 여러 오류를 표시함
- 여러 파일의 최근 변경 사항이 지워진 상태였음
- 손실은 Time Machine이나 Backblaze가 저장하기 전에 발생함
- 원인은 iCloud Drive가 감지한 파일 충돌이었음
- iCloud Drive는 Mac과 iPhone에 같은 파일의 다른 버전이 있고 자동 병합할 수 없다고 판단함
- 하지만 영향을 받은 파일은 iPhone에서 열린 적이 없었음
- Mac의 Documents 폴더를 iCloud로 옮겨둔 상태였기 때문에 해당 파일들이 iCloud에 있었음
- Dropbox는 버전 충돌이 생기면 “(John Doe’s conflicted copy)”처럼 이름 붙인 충돌 파일을 함께 저장함
- iCloud Drive는 같은 충돌을 파일 시스템에 표시하지 않음
- 충돌 처리를 지원하는 편집기에서 파일을 열면 어떤 버전을 유지할지 묻는 팝업이 나타남
- Textifier, Xcode, Obsidian처럼 충돌 처리가 없는 편집기에서는 iCloud가 디스크와 백업에 저장할 버전을 결정함
복구 조건과 대응 방법
- 시간이 지나 새 백업이 올바른 버전이 들어 있던 이전 백업을 덮어쓰면 콘텐츠가 영구 손실될 수 있음
- 복구하려면 충돌 해결을 지원하는 편집기로 해당 파일을 열어야 함
- 예시로 사용한 편집기는 iA Writer임
- 파일을 iCloud Drive 밖으로 옮긴 뒤에는 이 방법도 도움이 되지 않음
- 테스트에서는 변경하지 않은 파일을 다시 iCloud로 옮기면 충돌 버전 팝업이 다시 나타났지만, 파일이 편집됐거나 복사본으로 계속 작업한 경우에는 그렇지 않을 수 있음
- 버전 충돌을 숨기는 방식은 사용자 친화적으로 보일 수 있지만, 중요한 문서를 몇 년 뒤 다시 열 때까지 데이터 손실을 발견하지 못할 수 있음
- iCloud Drive가 파일 시스템이나 접근하기 쉬운 중앙 위치에 버전 충돌을 노출하기 전까지는 중요한 데이터를 iCloud Drive 밖으로 옮기는 편이 안전함
- iCloud Drive에 남겨야 하는 파일을 위해 숨겨진 동기화 충돌을 감지하고 해결하는 Cloud Cub을 만들고 있음