WIPIVERSE

ddrescue

ddrescue는 GNU 프로젝트에서 개발한 데이터 복구용 명령줄 도구이다. 원본 디스크 또는 파일에서 읽을 수 없는 영역이 존재할 경우, 가능한 데이터를 최대한 효율적으로 추출하여 별도의 대상 파일이나 디스크에 복사한다. 주요 특징은 다음과 같다.

  1. 복구 알고리즘

    • 처음에 연속적인 블록을 순차적으로 복사하고, 오류가 발생한 영역은 후에 별도로 재시도한다.
    • 재시도 시에는 작은 블록 크기로 점진적으로 접근하여 손상된 섹터를 가능한 많이 복구한다.
  2. 로그 파일 지원

    • 복구 진행 상황을 기록하는 log file(보통 .log 확장자)을 생성한다.
    • 복구가 중단된 경우, 로그 파일을 이용해 중단 지점부터 작업을 재개할 수 있다.
  3. 다중 단계 복구

    • 기본 복구 단계 외에, “스킵/재시도” 단계와 “정밀 복구” 단계로 구성된 여러 단계 실행이 가능하다.
  4. 플랫폼 및 라이선스

    • 주로 Linux 환경에서 사용되며, macOS 및 기타 Unix‑like 시스템에서도 컴파일하여 사용할 수 있다.
    • GNU General Public License (GPL) 버전 2 이하에 따라 배포된다.
  5. 일반적인 사용 사례

    • 물리적 손상이 발생한 하드디스크, SSD, USB 드라이브, CD/DVD 등에서 데이터 복구.
    • 파일 시스템이 손상된 경우에도 파일 시스템 레이어를 우회하여 원시 디스크 데이터를 복원.
    • 백업이 불가능하거나 손상된 매체를 대상으로 한 긴급 복구 작업.

사용 예시

ddrescue -f -n /dev/sdX /mnt/recovered.img /mnt/recover.log
  • -f : 대상 파일을 강제로 덮어씀.
  • -n : 처음 단계에서 빠른 복구만 수행하고, 오류 섹터에 대한 재시도는 하지 않음.

관련 도구
ddrescue와 유사한 도구로는 dd, dd_rescue, photorec, testdisk 등이 있다. 그러나 ddrescue는 로그 파일 기반의 단계적 복구와 오류 섹터에 대한 정밀 재시도 기능에서 차별화된다.

제한 사항

  • 물리적인 손상이 매우 심각하거나, 손상된 섹터가 완전히 읽을 수 없는 경우 복구율이 제한될 수 있다.
  • 파일 시스템 메타데이터가 손상된 경우, 복구된 이미지에서 파일 복원을 위해 추가적인 복구 도구가 필요할 수 있다.

결론
ddrescue는 손상된 저장 매체에서 데이터를 복구하기 위한 강력하고 유연한 오픈소스 도구로, 로그 기반 복구와 다단계 접근 방식이 특징이다. 데이터 복구 작업 시 신뢰할 수 있는 선택지 중 하나로 널리 사용된다.

둘러보기

더 찾아볼 만한 주제

    전체 문서 보기