포스팅이 길어진 점 사과드리며, 짧게 쓰려고 노력했습니다.
두 개의 경로가 주어지면 어떤 파일이 경로 중 하나에 존재하지 않는지 보여주는 도구/방법을 찾고 있습니다. 디렉토리 구성이 동일하지 않다는 점에 유의하는 것이 중요합니다. 동일한 파일이 서로 다른 깊이와 서로 다른 이름의 디렉터리에 있는 두 개의 "지정된 경로"에 존재할 수 있습니다. AFAIK diff, rsync, meld, freefilesync 및 중복 파인더는 이 작업을 수행하지 않습니다(이 작업을 올바르게 수행하게 되어 기쁩니다).
꽤 많이 검색했지만 이 작업을 수행하도록 설계된 항목을 찾을 수 없습니다. 이를 수행하고 출력 후처리의 추가 작업을 수행하기 위해 rmlint와 같은 프로그램을 활용하는 것이 가능하지만 이를 수행하는 더 깔끔한 방법이 있기를 바랐습니다. 약 6TB의 공간을 차지하는 많은 파일(약 5백만 개, 어쩌면 150만 개 고유 파일)이 있으므로 이 작업을 합리적으로 효율적으로 수행할 수 있는 도구를 찾는 것이 가장 좋습니다.
고유한 파일을 최종 대상에 복사하고 나중에 다른 기술을 사용하여 디렉터리의 삭제를 확인하므로 이름과 크기를 기반으로 한 기본 일치만으로 충분합니다. 즉, 최종 백업 디스크를 조립하고 기존 디스크에 기본 백업에 포함되지 않은 내용이 포함되어 있는지 확인한 다음 해당 기존 디스크를 재활용하여 백업의 오프라인 복사본을 만드는 것입니다.
복제의 본질은 기본적으로 홈 디렉토리와 같은 것의 여러 복사본으로, 몇 달 간격으로 떨어져 있고 완전히 비논리적인 방식으로 저장됩니다(약 25년 동안 한 번에 여러 시스템에서 복제됨). 따라서 사본은 한 번에 하나의 디스크에 저장되고, 다른 날짜는 다른 디스크에 저장되고, 다음 디스크에는 원본 디스크로 다시 저장되는 식입니다. 이러한 거의 중복된 항목을 수동으로 식별하고 있지만, 일단 해당 항목이 있으면 내부를 검사해야 하며 백업 사이에 이러한 홈 디렉터리의 데이터를 자주 재배열하는 것 같습니다.
이를 처리하는 방법에 대한 소프트웨어 제안이나 실패한 제안은 매우 환영받을 것입니다. 현재 저는 sqlite 백엔드를 사용하여 직접 뭔가를 작성하는 것에 대해 궁금합니다. 하지만 문제는 버그 등입니다. 현장에 더 강력한 제품이나 접근 방식이 알려져 있다면 그 길을 가는 것을 선호합니다.