"태그와 권한과 만든 날짜를 조용히 흘린 복사는 파일을 복사한 게 아니야. 내용만 옮기고 나머지를 잃은 거지."
파일은 내용만이 아니야
파일을 복사한다고 하면 보통 데이터를 떠올려. 그런데 macOS 파일은 꽤 많은 걸 달고 다녀. 만든 날짜와 고친 날짜, 접근 권한과 세부 권한 목록, 확장 속성, Finder 태그와 색 라벨, 리소스 포크, 격리 표시. 데이터만 옮기고 이걸 다 흘린 '복사' 는 파일을 조용히 망가뜨린 거야. 정리에 쓰던 태그가 사라지고, 지켜주던 권한이 어긋나고, 만든 날짜가 오늘이 되지. 그런데 아무도 안 알려줘.
지키고, 지켰는지 시험하고
Waygate 는 이걸 통째로 챙기는 방식으로 복사하고, 실제로 지켜졌는지 시험까지 해둬. 복사된 파일의 권한 목록과 확장 속성, 태그, 리소스 포크, 날짜가 살아남았는지 확인하는 시험 말이야. 그냥 그러려니 하는 게 아니라 시험 파일 묶음에 대고 확인해. 그래야 확장 속성을 흘리기 시작한 변화가, 몇 주 뒤 사용자가 태그 사라진 걸 발견하는 게 아니라 실패한 시험으로 잡히거든.
못 지킬 땐 그렇다고 말해
목적지가 전부를 담을 수 없을 때도 있어. 확장 속성이나 리소스 포크를 지원 안 하는 파일시스템으로 복사할 때처럼. 그럼 규칙은 하나야. 지원 안 되는 건 눈에 보이는 경고나 실패로 알리지, 조용히 흘리지 않는다. Waygate 는 태그를 버린 복사를 말없이 끝내느니 '이 목적지는 Finder 태그를 못 지켜' 라고 말하고 멈춰. 조용한 손실은 믿을 만한 파일 관리자가 절대 내놓으면 안 되는 결과야. 자잘한 경우도 제대로 다뤄. 대소문자만 바꾸는 이름 변경은 대소문자를 구분 안 하는 볼륨에선 기록을 남기며 임시 이름을 한 번 거치고, 장치 노드 같은 특수 파일은 다룰 방법을 정하기 전엔 거절해.