내부하드 드라이브, 외부드라이브, 또는NAS등 시간이 지남에 따라 중복 파일은 거의 피할 수 없습니다. 이는 개인 사용자뿐만 아니라 다중 사용자 환경에서는 더욱 그렇습니다. 시간이 지날수록 이러한 중복 파일은 계속 늘어나스토리지 공간를 낭비하고, 백업 속도를 저하시킬 뿐만 아니라데이터를 위험에 빠뜨릴 수 있습니다.
정말 그렇게 심각할까요? 몇 가지 간단한 예시를 살펴보겠습니다.
1. 사진 촬영 후, 사진애호가가 카메라 메모리 카드에서NAS로 사진을 복사하지만 카드를 포맷하는 것을 잊습니다. 다음에 새 사진을 촬영할 때, 전체 메모리 카드를 다시NAS로 복사합니다. 파일이 중복된다는 사실을 인지하지 못하거나 이미 전송된 파일을 기억하지 못해도, 중복 파일이 동일한드라이브에 저장되어 백업 시도움말에 거의 도움이 되지 않습니다.
2. 마케팅 부서의 전시회 코디네이터가 부스용 주요 비주얼 이미지를 폴더 A에 저장합니다. 같은 부서의 디자이너도 작업을 쉽게 하기 위해 동일한 이미지를 폴더 B에 저장합니다. 이후 외부 디자인 에이전시에 파일을 전달할 때, 에이전시가 접근할 수 있도록 동일한 파일을 또 다른 폴더에 저장합니다. 결국하드 드라이브에는 동일한 파일이 세 번 저장됩니다. 일주일 후, 숙련된 MIS 팀이 설정한 3-2-1-1-0 백업 전략이 작동하면서 이 중복 파일들이 여러 번 더 백업됩니다.
위의 두 가지 시나리오는 매우 흔합니다. 스토리지 공간와 시간 모두를 낭비할 뿐만 아니라, 중복 파일이 너무 많으면 버전 관리가 어려워집니다. 시간이 지나면 어떤 파일이 동일한지 구분하기 어려워지고, 심지어 실수로 삭제하여 유효한 복사본이 남지 않을 수도 있습니다.
따라서 파일을 정기적으로 정리하는 것은 시간과스토리지를 모두 절약할 수 있는 좋은 습관입니다. 하지만 파일을 하나씩 확인하는 것은 매우 시간이 많이 걸리므로, 써드파티도구를 사용하는 것이 가장 좋습니다.
두 개 이상의 파일이 동일한 내용을 포함하고 있는지 어떻게 알 수 있을까요?
이름이 제대로 지정되지 않으면 설명이 의미가 없어집니다. 진행하기 전에, 우리의 작업을 명확히 하겠습니다: 우리는NAS에서 완전히 동일한 파일과 사진을 찾고 있습니다. 일부 애플리케이션은 ‘유사한 사진 찾기’에 중점을 두지만, 이는 완전히 다른 유형의 작업으로, 나중에 따로 다룰 수 있습니다.
정확히 동일한 사진을 식별하는 것과 관련하여, 사진은하드 드라이브에 파일로 존재하므로, 내용이 동일한 파일은 본질적으로 같은 이미지입니다. 따라서 작업의 핵심 목표를 단순화할 수 있습니다: 중복 파일만 찾으면 됩니다. 이 과정을 일반적으로 ‘중복 제거(deduplication)’라고 부릅니다.
여기서 문제가 생깁니다: 어떻게 찾아서 비교할까요? 대부분의 도구는 동일한 기본 알고리즘과 논리를 따르며, 일반적으로 다음과 같이 작동합니다:
1. 먼저 파일 크기 비교
내용이 동일한 파일은 항상 크기도 같습니다. 따라서 이러한 도구들은드라이브에서 크기가 동일한 파일을 먼저 필터링합니다.
하지만 크기가 같은 파일이 반드시 내용도 동일한 것은 아닙니다. 예를 들어, 많은 분할 압축 파일은 고정된 크기로 나뉘며, 문자 수가 같은 텍스트 파일도 크기가 같습니다. 따라서 파일 크기만으로 파일이 동일한지 판단하는 것은 첫 단계에 불과합니다.

“2. 그런 다음 파일의’지문’을 비교합니다”
“디지털 파일은 이진 형태로 저장되기 때문에, 각 파일의 내용을 수학적 알고리즘을 사용하여’해시 값’이라고 불리는 고유한 16진수 문자열을 생성할 수 있습니다. 서로 다른 알고리즘은 서로 다른 해시 값을 만듭니다. 더 많은 연산이 필요한 알고리즘(SHA-512 등)은 더 신뢰할 수 있지만 시간이 더 오래 걸리고, 적은 연산이 필요한 알고리즘(MD5 등)은 더 빠르지만 신뢰도가 낮습니다.”
“파일이 다르다면 이러한 해시 값이 동일할 가능성은 일반적으로 매우 낮습니다. 이를 더 기술적으로는’충돌’이라고 하며, 차이점은 얼마나 쉽게 위조될 수 있는지에 있습니다. 해시 값은 각 파일의 고유한 지문으로 볼 수 있습니다. 두 파일의 지문이 동일하다면, 두 파일도 동일합니다.”

“해시 비교의 신뢰도가 높은데도 왜 먼저 파일 크기를 확인해야 할까요? 이렇게 하면도움말시간과 자원을 절약할 수 있습니다. 해시 값을 비교하는 것은 연산 집약적이지만, 동일한 크기의 파일을 찾는 것은 최신 컴퓨터에서는 거의 부담이 없습니다. 먼저 크기를 기준으로 파일 수를 줄인 후 해시 비교를 수행하면 훨씬 효율적입니다.”
“NAS환경 내에서 직접 비교를 수행하면 훨씬 더 빠릅니다.”
“많은데스크탑애플리케이션이Windows및macOS에서 이 작업을 처리할 수 있습니다. 하지만 파일이 이미NAS에 있다면, NAS자체에서 직접 프로세스를 실행하면 상당한 시간을 절약할 수 있습니다. 그 이유는 두 가지입니다:”
“1. 네트워크 전송 시간”
해시 값을 계산하려면 각 파일의 전체 내용을 읽어야 합니다. 로컬 컴퓨터에서NAS파일을 자주 읽는 것은 비효율적입니다.
2. 기본 도구 지원
NAS장치는 일반적으로 간단한 내장 중복 제거 도구가 제공되지 않지만(QNAP HBS는 백업 작업에 대해 중복 제거를 제공하며, 이는 이후 기사에서 다룰 예정입니다), 이 작업을 수행할 수 있는 다양한Linux유틸리티가 있습니다.
QNAP NAS에서 먼저 SSH를 활성화하고 원격으로 명령줄에 로그인합니다. 그런 다음 QPKG를 통해 jdupes 유틸리티를 설치합니다. jdupes는 QNAP 공식 유틸리티가 아니므로보안문제가 있다면 Docker 환경 내에서 이 작업을 수행하는 것이 좋습니다.
jdupes의 명령줄 옵션은 매우 간단합니다. 예를 들어, 현재 디렉터리와 모든 하위 디렉터리에서 중복 파일을 찾으려면 다음 명령을 사용하세요:
jdupes -r .

“-r” 옵션은 재귀적 검색을 의미하며, “.”는 현재 디렉터리에서 검색을 시작함을 나타냅니다. 실행하면 유틸리티가 파일 내용을 스캔하기 시작하며, 소요 시간은 파일의 수와 크기에 따라 다릅니다. 이 도구는NAS내의드라이브에서 자주 읽기를 수행하므로, 솔리드 스테이트드라이브(SSD)에서 실행하면 훨씬 더 빠릅니다.
비교가 완료되면 유틸리티는 모든 중복 파일을 나열하고 아래와 같이 그룹으로 정리합니다:

이름이나 경로가 다른 많은 파일이 사실상 동일하다는 것을 알 수 있습니다. 중복 파일을 식별한 후 다음 단계는 해당 파일을 삭제하는 것입니다. 이전 명령에 “d”를 추가하세요. 예시:
Jdupes -rd .
결과를 표시할 때 유틸리티는 사용자가 어떤 파일을 보관할지 선택하도록 안내하며, 나머지는 삭제됩니다. 이 방법은 파일 수가 적을 때는 괜찮지만, 수천 개의 중복 세트처럼 파일이 많을 경우 각각을 개별적으로 확인하는 것은 비현실적입니다.
이 시점에서 명령에 “N”을 추가할 수 있습니다. 예시:
Jdupes -rdN .
여기서 “N”은 “묻지 말고, 처음 발견된 일치하는 파일만 남기고 나머지는 모두 자동으로 삭제”를 의미합니다. 이 명령을 실행하면 대상 디렉터리에 동일한 파일이 하나만 남아 효과적으로 중복이 제거됩니다.

위 그림에서 “+”로 시작하는 파일은 유지되고, “-“로 시작하는 파일은 삭제됩니다.

이 글의 테스트에서 원본 디렉터리는 총 282 GB, 32,381개의 파일이 있었습니다. 중복 제거 후 전체 크기는 8~17% 감소했습니다. 디렉터리는 TS-464의SSD에 위치했으며, 전체 작업은 약 30초가 소요되었습니다. 작업 후 상당한 공간이 절약되었을 뿐만 아니라 백업 시간도 훨씬 빨라졌습니다.
이 시점에서 일부 사용자는 “특정 디렉터리의 파일을 유지하려면 어떻게 하나요?” 또는 “중요한 디렉터리의 파일은 삭제되면 안 되지 않나요?”라고 궁금해할 수 있습니다.
예를 들어, C:\Important에 있는 파일을 유지하려면 다음 명령을 사용할 수 있습니다:
jdupes -rdN -X “path:Important” .
경로에 “Important”가 포함된 파일은 삭제에서 제외됩니다.
공간 회수는 올바른 관리 습관에서 시작됩니다
중복 파일 정리는 단순히 몇 기가바이트의디스크공간을 확보하는 것만이 아니라 디지털 정리의 한 형태로 볼 수 있습니다. jdupes와 같은 고성능 도구를 사용하면 며칠이 걸리던 수동 비교 작업을 자동화로 몇 분 만에 완료할 수 있습니다. 이는NAS 스토리지효율성을 크게 높이고, 백업 프로세스를 간소화하며, 3-2-1-1-0 백업 전략 하에서 모든데이터가 고유하고 가치 있게 유지되도록 보장합니다.
정기적으로 정리하는 습관을 기르고 올바른 도구를 사용하면NAS가 진정한 “고성능데이터센터”로 기능하여 모든스토리지가 최적으로 활용될 수 있습니다.