본문 바로가기
리눅스

(번역) Data recovery

by 다움위키 2025. 1. 6.

원문 보기: https://dawoum.duckdns.org/wiki/Data_recovery

 

Original article: w:Data recovery

컴퓨팅에서, 데이터 복구는 삭제되거나, 접근할 수 없거나, 손실되거나, 손상되거나, 손상되거나, 포맷된 데이터를, 이들 저장소에 저장된 데이터에 보통의 방식으로 접근할 수 없을 때, 2차 저장소, 이동식 미디어, 또는 파일에서 검색하는 프로세스입니다. 데이터는 내부 또는 외부 하드 디스크 드라이브 (HDD), 솔리드-스테이트 드라이브 (SSD), USB 플래시 드라이브, 자기 테이프, CD, DVD, RAID 하위 시스템, 및 기타 전자 장치와 같은 저장 매체에서 가장 자주 복구됩니다. 저장 장치의 물리적 손상이나 호스트 운영 시스템 (OS)에 의해 마운트할 수 없게 된 파일 시스템으로의 논리적 손상으로 인해 복구가 필요할 수 있습니다.

논리적 오류는 하드 드라이브 장치가 작동하지만 사용자 또는 자동화된-OS가 그것들에 저장된 데이터를 검색하거나 접근할 수 없을 때 발생합니다. 논리적 오류는 엔지니어링 칩 손상, 파티션 손실, 펌웨어 오류, 또는 포맷/재설치 중 오류로 인해 발생할 수 있습니다.

데이터 복구는 매우 간단하거나 기술적인 도전이 될 수 있습니다. 이것이 이 분야를 전문으로 하는 특정 소프트웨어 회사가 있는 이유입니다.

About

가장 공통적인 데이터 복구 시나리오에는 (전형적으로 단일-드라이브, 단일-파티션, 단일-OS 시스템에서) 운영 시스템 오류, 저장 장치의 오작동, 저장 장치의 논리적 오류, 우발적 손상 또는 삭제, 등이 포함되며, 이 경우에서 궁극적인 목표는 손상된 미디어에서 모든 중요한 파일을 또 다른 새 드라이브로 복사하는 것입니다. 이것은 문제의 손상된 드라이브 대신 ROM 또는 USB 드라이브에서 직접 부팅함으로써 Live CD 또는 DVD를 사용하여 수행될 수 있습니다. 많은 Live CD 또는 DVD는 시스템 드라이브와 백업 드라이브 또는 이동식 미디어를 마운트하고, 시스템 드라이브에서 파일 관리자 또는 광 디스크 저작 소프트웨어를 갖는 백업 미디어로 파일을 이동하는 수단을 제공합니다. 그러한 경우는 종종 디스크 파티셔닝과 귀중한 데이터 파일 (또는 그것들의 복사본)을 교체 가능한 OS 시스템 파일과 다른 파티션에 지속적으로 저장함으로써 완화될 수 있습니다.

또 다른 시나리오는 손상된 파일 시스템이나 드라이브 파티션, 또는 하드 디스크 드라이브 오류와 같은 드라이브-수준 오류를 포함합니다. 이들 경우 중 어느 경우든, 미디어 장치에서 데이터를 쉽게 읽을 수 없습니다. 상황에 따라, 해결책에는 논리적 파일 시스템, 파티션 테이블, 또는 마스터 부트 레코드를 복구하거나, 손상된 데이터의 소프트웨어-기반 복구에서 손상된 서비스 영역 (하드 디스크 드라이브의 "펌웨어"라고도 함)의 하드웨어-기반과 소프트웨어-기반 복구, 물리적으로 손상된 드라이브의 하드웨어 교체에 이르기까지 다양한 펌웨어 또는 드라이브 복구 기술을 업데이트하여 데이터를 새 드라이브로 추출하는 것이 포함됩니다. 드라이브 복구가 필요하면, 전형적으로 드라이브 자체가 영구적으로 실패했고, 초점은 오히려 일회성 복구에 맞춰, 읽을 수 있는 모든 데이터를 구출하는 것입니다.

세 번째 시나리오에서, 사용자가 실수로 저장 매체에서 파일을 "삭제"했습니다. 전형적으로, 삭제된 파일의 컨텐츠는 물리적 드라이브에서 즉시 제거되지 않습니다; 대신, 디렉토리 구조에서 해당 파일에 대한 참조가 제거되고, 그 후 삭제된 데이터가 차지하는 공간이 나중에 데이터를 덮어쓸 수 있도록 제공됩니다. 최종 사용자의 생각으로는 삭제된 파일은 표준 파일 관리자를 통해 발견할 수 없지만, 삭제된 데이터는 기술적으로 물리적 드라이브에 여전히 존재합니다. 그동안, 원래 파일 컨텐츠는 종종 여러 개의 연결이 끊긴 조각으로 남아 있고, 다른 데이터 파일로 덮어쓰지 않으면 복구할 수 있습니다.

"데이터 복구"라는 용어는 역시 손상된 것이 아니라 암호화, 숨김, 또는 삭제된 데이터를 복구하는 포렌식 응용 프로그램 또는 스파이 활동의 ​​맥락에서 사용됩니다. 때로는 컴퓨터에 있는 데이터가 바이러스 공격과 같은 이유로 암호화되거나 숨겨지기도 하며, 이는 일부 컴퓨터 포렌식 전문가만이 복구할 수 있습니다.

Physical damage

다양한 실패로 인해 저장 매체에 물리적 손상이 발생할 수 있으며, 이는 인간의 실수와 자연 재해로 인해 발생할 수 있습니다. CD-ROM은 금속 기판이나 염색 층이 긁힐 수 있습니다; 하드 디스크는 헤드 충돌, PCB 고장, 및 모터 고장과 같은 수많은 기계적 고장으로 인해 손상될 수 있습니다; 테이프는 단순히 끊어질 수 있습니다.

하드 드라이브에 물리적 손상이, 심지어 헤드 충돌이 발생한 경우에도, 반드시 영구적인 데이터 손실이 발생하는 것은 아닙니다. 많은 전문 데이터 복구 회사에서 사용하는 기술은 전형적으로 장애가 발생했을 때 손실된 데이터의, 전부가 아니면, 대부분의 데이터를 복구할 수 있습니다.

물론, 하드 드라이브 플래터에 심각한 손상이 발생한 경우와 같이 이에 대한 예외가 있습니다. 어쨌든, 하드 드라이브를 수리하고 전체 이미지 또는 복제본을 만들 수 있으면, 대부분의 경우 논리적 파일 구조를 다시 구출할 수 있습니다.

대부분의 물리적 손상은 최종 사용자가 수리할 수 없습니다. 예를 들어, 일반 환경에서 하드 디스크 드라이브를 열는 것은 공기 중의 먼지가 플래터에 쌓여 플래터와 읽기/쓰기 헤드 사이에 걸릴 수 있습니다. 일반 작동 중에, 읽기/쓰기 헤드는 플래터 표면 위로 3~6 나노미터 높이에 떠 있고, 일반 환경에서 발견되는 평균 먼지 입자는 전형적으로 지름에서 약 30,000 나노미터입니다. 이들 먼지 입자가 읽기/쓰기 헤드와 플래터 사이에 걸릴 때, 그것들이 새로운 헤드 충돌을 일으켜 플래터를 더욱 손상시키고 따라서 복구 프로세스를 손상시킬 수 있습니다. 더욱이, 최종 사용자는 일반적으로 이러한 수리를 수행하는 데 필요한 하드웨어나 기술 전문 지식이 없습니다. 결과적으로, 데이터 복구 회사는 종종 100등급 무진공과 무정전 클린룸을 사용하는 평판이 좋은 것을 통해 중요한 데이터를 복구합니다.

Recovery techniques

물리적으로 손상된 하드웨어에서 데이터를 복구하는 것은 여러 가지 기술이 필요할 수 있습니다. 일부 손상은 하드 디스크에서 부품을 교체함으로써 복구될 수 있습니다. 이것만으로도 디스크를 사용할 수 있지만, 논리적 손상이 여전히 있을 수 있습니다. 특수 디스크-이미징 절차는 표면에서 읽을 수 있는 모든 각 비트를 복구하기 위해 사용됩니다. 이 이미지를 획득하고 신뢰할 수 있는 매체에 저장하면, 이미지는 안전하게 논리적 손상에 대해 분석될 수 있고 아마도 원래 파일 시스템의 대부분을 재구성할 수 있습니다.

Hardware repair

공통적인 오해는 손상된 인쇄 회로 기판 (PCB)을 복구 절차 중에 건강한 드라이브에서 동일한 PCB로 간단히 교체할 수 있다는 것입니다. 이것은 2003년 이전에 제조된 하드 디스크 드라이브에서는 드물게 작동할 수 있지만, 최신 드라이브에서는 작동하지 않을 것입니다. 최신 드라이브의 전자 보드에는 보통 드라이브-별 적응 데이터 (일반적으로 불량 섹터 맵과 튜닝 매개변수)와 드라이브의 데이터에 제대로 접근하하는 데 필요한 기타 정보가 포함되어 있습니다. 교체 보드에는 모든 데이터를 효과적으로 복구하기 위해 이 정보가 필요한 경우가 많습니다. 교체 보드를 다시 프로그래밍해야 할 수도 있습니다. 일부 제조업체 (예를 들어, Seagate)는 이 정보를 직렬 EEPROM 칩에 저장하며, 이를 제거하여 교체 보드로 전송할 수 있습니다.

각 하드 디스크 드라이브에는 시스템 영역 또는 서비스 영역이라고 하는 것이 있습니다; 최종 사용자가 직접 접근할 수 없는 드라이브의 이 부분은 보통 드라이브의 펌웨어와 드라이브가 정상 매개변수 내에서 작동하도록 돕는 적응 데이터를 포함합니다. 시스템 영역의 한 가지 기능은 드라이브 내의 결함이 있는 섹터를 기록하는 것입니다; 본질적으로 드라이브에 데이터를 쓸 수 있는 위치와 쓸 수 없는 위치를 알려줍니다.

섹터 목록은 역시 PCB에 부착된 다양한 칩에 저장되고, 그것들은 각 하드 디스크 드라이브에 고유합니다. PCB의 데이터가 플래터에 저장된 데이터와 일치하지 않으면, 드라이브가 제대로 보정되지 않습니다. 대부분의 경우에서. 드라이브 헤드가 PCB에 저장된 데이터와 일치하는 데이터를 찾을 수 없기 때문에, 그것들은 딸깍하는 소리가 날 것입니다.

Logical damage

"논리적 손상"이란 용어는 오류가 하드웨어 문제가 아니고 소프트웨어 수준의 해결책이 필요한 상황을 참조합니다.

Corrupt partitions and file systems, media errors

일부 경우에서, 하드 디스크에서 데이터가 파티션 테이블이나 파일 시스템에 대한 손상, 또는 (간헐적인) 미디어 오류로 인해 읽을 수 없습니다. 이들 경우의 대부분에서, 적어도 원래 데이터의 일부는 TestDisk와 같은 전문 데이터 복구 소프트웨어를 사용하여 손상된 파티션 테이블이나 파일 시스템을 고침으로써 복구될 수 있습니다; ddrescue와 같은 소프트웨어는 간헐적인 오류에도 불구하고 미디어를 이미지화하고, 파티션 테이블이나 파일 시스템이 손상되었을 때 원시 데이터를 이미지화할 수 있습니다. 이러한 유형의 데이터 복구는 특수한 물리적 장비나 플래터에 대한 접근이 필요하지 않으므로 드라이브 하드웨어에 대한 전문 지식이 없는 사람도 수행할 수 있습니다.

때로는 데이터는 상대적으로 간단한 방법과 도구를 사용하여 복구될 수 있습니다; 더 심각한 경우에는 전문가의 개입이 필요할 수 있으며, 특히 파일의 일부가 복구 불가능하면 더욱 그렇습니다. 데이터 카빙(Data carving)은 그것들의 구조의 지식을 사용하여 손상된 파일의 일부의 복구입니다.

Overwritten data

See also: Data erasure

데이터는 하드 디스크 드라이브에 물리적으로 덮어씌워진 후, 일반적으로 이전 데이터는 더 이상 복구할 수 없다고 가정합니다. 1996년에, 컴퓨터 과학자, Peter Gutmann자기력 현미경의 사용을 통해 덮어쓴 데이터를 복구할 수 있다고 제안하는 논문을 발표했습니다. 2001년에, 그는 비슷한 주제에 대한 또 다른 논문을 발표했습니다. 이러한 유형의 데이터 복구를 방지하기 위해, Gutmann과 Colin Plumb은 Gutmann 방법으로 알려진 데이터를 되돌릴 수 없게 스크러빙하는 방법을 설계했고 여러 디스크-스크러빙 소프트웨어 패키지에 의해 사용됩니다.

상당한 양의 덮어쓰기 데이터가 복구된 구체적인 사례가 없다는 점을 주로 다루면서 상당한 비판이 이어졌습니다. Gutmann의 기사에는 데이터가 하드 드라이브에서 인코딩되고 처리되는 방법에 대한 정보와 관련하여 특히 많은 오류와 부정확성이 포함되어 있습니다. 비록 Gutmann의 이론이 옳을 수 있지라도, 덮어쓴 데이터가 복구될 수 있다는 실질적인 증거는 없고, 반면에 연구 결과는 덮어쓴 데이터는 복구할 수 없는 것으로 나타났습니다.

솔리드-스테이트 드라이브 (SSD)는 하드 디스크 드라이브 (HDD)와 다르게 데이터를 덮어쓰기 때문에 적어도 일부 데이터는 복구하기 쉽습니다. 대부분의 SSD는 플래시 메모리를 사용하여 페이지와 블록에 데이터를 저장하고, 플래시 변환 계층 (FTL)에 의해 관리되는 논리 블록 주소 (LBA)로 참조합니다. FTL이 섹터를 수정할 때, 그것은 새 데이터를 또 다른 위치에 쓰고 맵을 업데이트하므로 새 데이터가 대상 LBA에 나타납니다. 이렇게 하면 수정 전 데이터가 그대로 남아, 여러 세대가 될 수 있고, 데이터 복구 소프트웨어로 복구할 수 있습니다.

Lost, deleted, and formatted data

때로는, 물리적 드라이브 (내부/외부 하드 디스크, 펜 드라이브, 등)에 있는 데이터가 바이러스 공격, 실수로 삭제 또는 실수로 SHIFT+DELETE의 사용과 같은 상황으로 인해 손실, 삭제, 및 포맷됩니다. 이들 경우에서, 데이터 복구 소프트웨어는 데이터 파일을 복구/복원하기 위해 사용됩니다.

Logical bad sector

하드 디스크의 논리적 오류 목록에서, 논리적 불량 섹터는 데이터를 읽을 수 없게 만드는 가장 공통적인 오류입니다. 때로는 소프트웨어에서도 오류 감지를 우회할 수 있고, 아마도 반복적인 읽기와 통계 분석과 함께 적어도 일부 놓여있는 저장된 데이터를 복구할 수 있습니다. 때로는 저장된 데이터와 오류 감지 및 수정 코드에 대한 사전 지식은 심지어 오류가 있는 데이터를 복구하기 위해 사용될 수 있습니다. 어쨌든, 놓여있는 물리적 드라이브가 충분히 심하게 저하되었으면, 적어도 데이터를 둘러싼 하드웨어는 교체되어야 하거나, 실험실 기술을 물리적 기록 매체에 적용해야 할 수도 있습니다. 각 접근 방식은 점점 더 비싸지고, 이를테면 점점 더 드물게 사용됩니다.

결국, 최종, 물리적 저장 매체가 충분하게 심하게 훼손되었으면, 어떤 수단을 사용해도 복구가 불가능합니다; 정보는 돌이킬 수 없게 손실됩니다.

Remote data recovery

복구 전문가가 항상 손상된 하드웨어에 물리적 접근을 가져야 할 필요는 없습니다. 손실된 데이터가 소프트웨어 기술로 복구될 수 있을 때, 그것들은 종종 인터넷, LAN 또는 손상된 미디어의 물리적 위치로의 다른 연결을 통해 원격 접근 소프트웨어를 사용하여 복구를 수행할 수 있습니다. 이 프로세스는 최종 사용자가 스스로 수행할 수 있는 것과 본질적으로 다르지 않습니다.

원격 복구에는 적절한 대역폭을 갖는 안정적인 연결이 필요합니다. 어쨌든, 그것은 물리적 손상의 경우에서 처럼 하드웨어로의 접근이 필요한 곳에는 적용하지 못합니다.

Four phases of data recovery

보통, 성공적인 데이터 복구에는 4가지 단계가 있지만, 이는 데이터 손상과 필요한 복구 유형에 따라 달라질 수 있습니다.

Phase 1 : 하드 디스크 드라이브를 수리:하드 드라이브는 어떤 형태로든 작동하는 그것을 얻기 위해 수리되거나, 적어도 데이터를 읽기에 적합한 상태로 만들기 위해 수리됩니다. 예를 들어, 헤드가 불량이면 그것이 교체되어야 합니다; PCB에 결함이 있으면 고치거나 교체되어야 합니다; 스핀들 모터가 불량이면 플래터와 헤드를 새 드라이브로 옮겨야 합니다.

Phase 2 : 드라이브를 새 드라이브나 디스크 이미지 파일에 이미지화: 하드 디스크 드라이브가 고장났을 때, 드라이브에서 데이터를 가져오는 것이 최우선 순위입니다. 고장난 드라이브를 오래 사용할수록 데이터 손실이 더 많이 발생할 가능성이 큽니다. 드라이브 이미지를 만드는 것은 다른 장치에 데이터의 보조 사본이 있어서 원본을 손상시키지 않고 테스트와 복구 절차를 안전하게 수행할 수 있습니다.

Phase 3 : 파일, 파티션, MBR 및 파일 시스템 구조의 논리적 복구: 드라이브가 새 드라이브로 복제된 후, 손실된 데이터의 복구를 시도하는 것이 적합합니다. 드라이브가 논리적으로 실패했으면, 그것에 대해 여러 가지 이유가 있습니다. 복제본을 사용하여, 파일 시스템의 데이터 구조를 읽고 저장된 데이터를 검색하기 위해 파티션 테이블이나 마스터 부트 레코드 (MBR)를 복구하는 것이 가능할 수 있습니다.

Phase 4 : 검색된 손상된 파일을 복구: 예를 들어, 손상된 드라이브의 섹터에 파일이 쓰여질 때 데이터 손상이 발생할 수 있습니다. 이것은 고장난 드라이브에서 가장 흔한 원인으로, 읽을 수 있도록 데이터를 재구성해야 한다는 것을 의미합니다. 손상된 문서는 여러 소프트웨어 방법을 통해 복구하거나 16진수 편집기를 사용하여 문서를 수동으로 재구성함으로써 복구될 수 있습니다.

Restore disk

Windows 운영 시스템은 이미 라이선스가 있는 컴퓨터에 다시 설치할 수 있습니다. 재설치는 운영 체제를 다운로드하거나 컴퓨터 제조업체에서 제공하는 "복구 디스크"를 사용하여 수행될 수 있습니다. Eric Lundgren은 28,000개의 복구 디스크를 생산하여 컴퓨터 수리점에 편의를 제공하기 위해 각각 약 25센트에 배포하려고 한 혐의로 2018년 4월에 벌금을 받고 미국 연방 교도소에 수감되었습니다.

List of data recovery software

Bootable

데이터 복구는 항상 실행 중인 시스템에서 수행될 수 없습니다. 결과로써, 부팅 디스크, 라이브 CD, 라이브 USB, 또는 임의의 다른 유형의 라이브 디스트로에는 최소한의 운영 시스템이 포함됩니다.

  • BartPE: Microsoft Windows XP 또는 Windows Server 2003 32비트 운영 시스템의 가벼운 변형으로, Windows 사전-설치 환경과 유사하며, 라이브 CD 또는 라이브 USB 드라이브에서 실행될 수 있습니다. 중단됨.
  • Finnix: 작고 빠른 데비안-기반 Live CD로, 컴퓨터와 데이터 복구에 유용합니다.
  • Disk Drill: 데이터 복구를 위한 부팅 가능한 macOS USB 드라이브를 생성할 수 있습니다.
  • Knoppix: 리눅스 아래에서 데이터 복구를 위한 유틸리티를 포함합니다.
  • SystemRescue: 부팅할 수 없는 컴퓨터 시스템을 복구하고 시스템 충돌 후 데이터를 검색하는 데 유용한 아치 리눅스-기반 라이브 CD
  • Windows Preinstallation Environment (WinPE): 사용자 지정 가능한 Windows 부팅 DVD (Microsoft에서 제작되어 무료로 배포). 나열된 프로그램 중 하나로 부팅하도록 수정될 수 있습니다.

Consistency checkers

File recovery

  • CDRoller: 광 디스크에서 데이터를 복구
  • Disk Drill: Mac OS X 및 Windows에 대한 데이터 복구 응용 프로그램
  • DMDE: 다중-플랫폼 데이터 복구 및 디스크 편집 도구
  • dvdisaster: 광 디스크에 대한 오류-수정 데이터를 생성
  • GetDataBack: 윈도우 복구 프로그램
  • Hetman Partition Recovery: 데이터 드라이브 복구 솔루션
  • IsoBuster: 광 디스크, USB 스틱, 플래시 드라이브, 및 하드 드라이브에서 데이터를 복구
  • Mac Data Recovery Guru: USB 스틱, 광학 미디어, 및 하드 드라이브에서 작동하는 Mac OS X 데이터 복구 프로그램
  • MiniTool Partition Wizard: Windows 7 이상에 대해; 데이터 복구 포함
  • Norton Utilities: 파일 복구 구성 요소를 가지는 유틸리티 모음
  • PhotoRec: 파일을 복구하기 위해 사용되는 텍스트-기반 사용자 인터페이스를 가진 고급 멀티-플랫폼 프로그램
  • Recover My Files: Windows 2000 이상—FAT, NTFS, 및 HFS에 대해 독점 소프트웨어
  • Recovery Toolbox: 무료 및 셰어웨어 도구와 다양한 Windows 2000 및 이후 프로그램을 위한 온라인 서비스
  • Recuva: Windows 2000 이상—FAT와 NTFS에 대한 독점 소프트웨어
  • Stellar Data Recovery: Windows와 macOS에 대한 데이터 복구 유틸리티
  • TestDisk: 자유, 오픈 소스, 다중-플랫폼. 파일과 손실된 파티션 복구
  • AVG TuneUp: Windows XP 이상에 대한 파일 복구 구성 요소를 가진 유틸리티 모음
  • Windows File Recovery: Windows 10 버전 2004 이상에서 삭제된 파일을 복구하기 위한 Microsoft의 명령줄 유틸리티

Forensics

  • Foremost: 원래 공군 특수수사국과 NPS 정보시스템 보안연구센터에서 개발한 오픈-소스 명령줄 파일 복구 프로그램입
  • Forensic Toolkit: AccessData에 의해, 법 집행 기관에 의해 사용
  • Open Computer Forensics Architecture: 리눅스에 대한 오픈-소스 프로그램
  • The Coroner's Toolkit: 침입 후 UNIX 시스템의 법의학적 분석을 지원하기 위한 유틸리티 모음
  • The Sleuth Kit: TSK라고도 알려진, Brian Carrier에 의해 UNIX, Linux 및 Windows 시스템을 위해 개발된 포렌식 분석 도구 모음. TSK에는 Autopsy 포렌식 브라우저가 포함됩니다.

Imaging tools

See also: Disk image
  • Clonezilla: 자유 디스크 복제, 디스크 이미징, 데이터 복구, 및 배포 부팅 디스크
  • dd: 유닉스-계열 시스템에서 발견되는 공통적인 바이트-에서-바이트 복제 도구
  • ddrescue: dd와 유사한 오픈 소스 도구이지만 실패한 저장 장치에서 잘못된 블록을 건너뛰고 다시 시도할 수 있는 기능이 있음
  • Team Win Recovery Project: 안드로이드 기기를 위한 자유와 오픈-소스 복구 시스템