검수요청.png검수요청.png

복구

해시넷
이동: 둘러보기, 검색

복구(復舊, recovery)는 정보통신(ICT) 분야에서 사용하는 의미로서, 시스템의 오류나 고장 때문에 변형 또는 소멸된 자료의 내역을 원래대로 되돌리는 것을 말한다.

개요[편집]

자료 복구(資料復舊, data recovery) 또는 데이터 복구는 손상되고 실패되어 일반적으로 접근할 수 없는 중요한 기억 매체로부터 자료를 되살리는 작업이다. 때때로 하드디스크 드라이브, 기억 테이프, CD, DVD, RAID, 그리고 다른 전자적 기기들과 같은 기억 매체 형식들로부터 자료를 복구한다. 이것은 호스트 운영 체제에 의해 마운트 되는 것을 막아 주는 파일 시스템으로의 논리적 위험이나 기억 장치로의 물리적 위험 때문에 비롯된다. 용어에 혼동이 있을 수 있지만, 컴퓨터 수사 목적이나 조사를 위해 기억 매체로부터 삭제된 정보를 복구하는 경우도 있다. 하지만 데이터 손상/손실의 정도와 상태에 따라 완전한 복구에는 분명 한계가 있다. 따라서 데이터 복구는 최선책이 아니며 주기적인 데이터의 백업만이 소중한 데이터의 손실을 방지하는 최선의 방법이다. 하지만 최악의 경우 발생할 수 있는 데이터 손상/손실을 최소화하고 데이터의 복구율을 높이기 위해 문제가 발생된 저장 장치는 더 이상 사용하지 않고 데이터 손실의 유형과 예방 방법을 숙지해 두어야 한다. 매체의 손상이나 덮어쓰기 등에 의해 이미 원본 데이터가 없어진 상태에서는 그 누구라도 살릴 수 없으므로 주의를 해야 한다.[1][2]

특징[편집]

데이터 인코딩[편집]

초기 디스크에 사용된 데이터 인코딩 방식은 주파수 변조(FM, Frequency Modulation) 방식이었다. 이후 자화 반전의 낭비를 줄여 효율을 50% 올린 수정된 주파수 변조(MFM, Modified Frequency Modulation) 방식을 사용했다. 이 방식은 현재까지도 플로피 디스크의 인코딩 표준으로 사용하고 있다. 아날로그 또는 디지털 데이터를 전송선로를 통해 전송하기 위해 선로 특성을 감안하여 적합한 신호로 부호화하는 것을 의미한다. 데이터는 오디오 또는 비디오 데이터 같은 아날로그 데이터와 컴퓨터 2진 데이터 같은 디지털 데이터로 구분된다. 신호는 디지털 신호 및 아날로그 신호도 될 수 있으며, 디지털 신호로 전송할 때는 부호화기와 복호화기가 사용되고, 아날로그 신호로 전송할 때에는 변조기와 복조기가 사용된다.[3][4]

디지털 데이터를 디지털 신호로 인코딩

일반적으로 디지털 데이터를 디지털 신호로 인코딩하여 전송하는 것으로, 디지털을 아날로그로 변조하는 경우보다 단순하고 비용이 저렴하다.

  • 디지털 신호 : 불연속적인 전압 펄스 형태로 표현되며 각 전압 펄스 +12V, 0, -12V 등의 일정한 값을 가지는데, 하나의 전압 펄스를 신호 요소(Signal Element)라고 한다. 디지털 데이터의 한 비트를 하나의 디지털 신호로 대응시키며, 디지털 신호 요소는 선로 부호화(Line Coding) 기법에 따라 다르게 구현된다.
  • 단극형/양극형 전송 신호 : 디지털 전송 신호 요소로, 단극형 전송 신호는 지정된 전압이 모두 양(+)이거나 모두 음(-)인 경우다. 양극형 전송 신호는 지정된 전압이 하나는 양, 하나는 음의 전압으로 표시되는 것이다.
  • NRZ-L 코드(NonReturn-to-Zero Level) : 전압 준위가 데이터 비트를 나타내는 방식이다.
  • NRZI 코드(NonReturn-to-Zero Inverted) : 데이터 비트 1에 대해 비트 구간의 시작에서 신호 천이(Transition)가 발생하며, 데이터 비트 0에 대해서는 천이가 없다. NRZ 방식은 가장 간단한 형태의 선로 부호이나 동일한 비트가 연속적으로 나타나면 직류 성분이 존재하여 동기화 능력이 없는 것이 제약점이다.
  • Bipolar-AMI 코드 : +, 0, - 3개의 신호 레벨을 사용한다.
  • 맨체스터 코드 : NRZ의 선로 부호에서 동기화 능력을 부여하기 위해 데이터 비트당 천이 능력을 부여한 것으로, 데이터 비트 1은 고준위에서 저준위로 천이하며, 데이터 비트 0은 저준위에서 고준위로 천이한다. 현재 IEEE 802.3의 CDMA/CD 랜에서 전송 부호로 사용되며, 차등 맨체스터(Differential Manchester) 코드는 IEEE 802.5의 토큰링 랜에서 사용한다.[4]
아날로그 데이터를 디지털 신호로 인코딩

아날로그 데이터를 표본화(Sampling), 양자화(Quantization), 그리고 부호화(Encoding) 과정을 거쳐 디지털 데이터로 변환하고 전송하는 것이다. 양자화란 입력 신호를 유한한 개수의 값으로 근사화하는 것으로, 비선형 연산이며 원래 신호로의 완전한 재생이 불가능하다. 입력 신호에 따라 스칼라 양자화와 벡터 양자화로 나눌 수 있으며, 부호화의 배치에 따라 균일 양자화와 비균일 양자화로 나눌 수 있다.

  • 표본화 과정 : 아날로그 신호를 일정한 주기마다 표본화하여 PAM(Pulse Amplitude Modulation) 펄스로 변환하는 과정으로, 원래 신호가 훼손되지 않도록 표본화 주기에 샤논(Shannon)의 샘플링 이론을 적용한다. 음성 신호의 경우 사람의 음성은 300 ~ 3400Hz이므로, 이를 2배로 하면 표본화 주파수가 8000Hz, 즉 1초에 8000번 표본화하면 원래의 음성 데이터를 정보 손실 없이 유지할 수 있다.
  • 양자화 과정 : PAM 진폭을 이산적인 값으로 근사화시키는 과정이다. 양자화 잡음이 발생한다.
  • 아날로그 데이터를 디지털 신호로 변환하는 이유 : 아날로그 신호는 원거리 전송 시 증폭기(Amplifier)를 사용하므로 잡음이 발생하나, 디지털 신호는 리피터(Repeater)를 사용하므로 부가적인 잡음이 발생하지 않는다. 아날로그 신호에서 사용되는 주파수 분할 다중화(FDM : Frequency Division Multiplexing) 대신 디지털 신호에서는 시분할 다중화(TDM : Time Division Multiplexing)가 사용되어 상호 변조 잡음이 존재하지 않는다. 디지털 신호로 변환함으로써 강력한 디지털 교환 기법을 사용할 수 있다.[4]
디지털 데이터를 아날로그 신호로 인코딩

광섬유와 같은 비유도 전송 매체는 아날로그 신호만을 전송할 수 있다. 디지털 데이터를 아날로그 신호로 변환하는 예로 디지털 변조를 들 수 있으며, 디지털 변조는 아날로그 반송파의 진폭, 주파수, 위상 중에 하나 또는 이들을 조합하여 디지털 데이터 비트를 표현한다. 디지털 변조에서 디지털 데이터를 아날로그 신호로 변환시키는 것을 변조(Keying)라 하며, 진폭 편이 변조(ASK : Amplitube-Shift Keying), 주파수 편이 변조(FSK : Frequency-Shift Keying), 위상 편이 변조(PSK : Phase-Shift Keying) 3가지 방식이 있다.

  • QAM(Quadrature Amplitude Modulation) : 반송파의 진폭과 위상을 상호 변화시키는 방식으로, 하나의 신호 요소를 이용해 복수의 데이터 비트를 표현하는 개념이다. ITU-T V.29 권고안의 9600bps 모뎀은 8개의 위상과 각 위상에 2개의 진폭으로 총 16개의 전송 신호를 지정하여 사용한다.[4]
아날로그 데이터를 아날로그 신호로 인코딩

전기적 형태를 갖는 아날로그 데이터는 베이스밴드 신호로서 저비용으로 전송이 가능하다. 아날로그 데이터를 아날로그 신호로 전송하는 경우는 라디오나 TV의 방송 매체에서 주로 사용되며 컴퓨터 통신에서는 거의 사용되지 않는다. 아날로그 전송 신호는 전송 매체에 적합한 일정한 주파수를 갖는 반송파를 가지며, 그 반송파에 변조할 정현파 신호를 변조하여 전송하며, 아날로그 데이터를 아날로그 전송 신호에 싣는 것을 변조(Modulation)라고 한다.

  • 진폭 변조(AM : Amplitude Modulation) : 반송파의 진폭에 아날로그 데이터를 싣는 방법이다.
  • 주파수 변조(FM : Frequency Modulation) : 반송파의 주파수가 입력 아날로그 데이터에 따라 변환하는 것이다.
  • 위상 변조(PM : Phase Modulation) : 반송파의 위상이 입력 아날로그 데이터에 의해 변환하는 것이다.[4]

데이터 복구 유형[편집]

논리적 손상 복구[편집]

파티션 삭제 및 재설정
포맷

논리적 손상 즉, 소프트웨어 손상은 사용자 임의로 파일을 삭제하거나 포맷, 재설치 하는 것처럼 디스크에는 이상이 없지만 사용자의 실수로 인하여 나타나는 증상이다.

  • 파티션 삭제 및 재설정 시 : 실수로 파티션을 삭제 또는 재설정 하였을 경우 추가 작업이 없는 상태에서 복구작업을 진행해야 손실 없이 자료를 복원할 수 있다. 포맷이나 윈도우 재설치와 같은 추가 작업을 할 경우 복구율은 떨어지게 되므로 주의해야 한다.[5]
  • 부트섹터(Boot Sector)  : 부트섹터 손상은 소프트웨어 증상, 하드웨어 증상 또는 두 가지 증상이 복합적으로 나타나는 경우가 있다. 소프트웨어 증상으로는 시스템 에어, 바이러스와 같이 논리적으로 해당 영역 섹터에 손상을 주는 경우가 있으며, 하드웨어 증상으로는 주로 디스크에 배드 섹터가 발생되어 해당 영역 섹터 정보를 읽어내지 못하여 발생하는 문제로 구분할 수 있다.[5]
  • 삭제 후 휴지통 비우기 : 파일이나 폴더를 삭제하면 저장 장치에서 파일의 영역 값이 삭제된 것으로 표시되어 데이터가 지워진 것으로 인식되지만 데이터 흔적이 완전히 삭제되는 것은 아니다. 삭제 이후 계속해서 컴퓨터를 사용하거나 프로그램 설치, 파일 복사, 기타 자료를 저장하는 작업을 하게 되면 복구율이 떨어지게 된다. 자료 손실 후 사용을 중단하고 데이터 복구 작업을 진행하여 추가적인 데이터 손실을 최소화하는 것이 가장 좋은 방법이다.[5]
  • 포맷 : 저장 장치를 포맷하면 하드디스크를 처음 구매했을 때와 같이 초기화 상태로 보이게 된다. 데이터를 지운 경우와는 달리 저장 장치 전체를 빈 공간으로 인식하게 된다. 포맷 이후에 프로그램 설치, 파일 복사, 기타 자료를 저장하는 작업을 하지 않았을 경우 일반적으로 데이터 복구가 가능하지만, 추가적인 작업 및 사용을 하였을 경우 그 정도에 따라서 데이터 복구율이 낮아지게 된다. 자료 손실 후 사용을 중단하고 데이터 복구 작업을 진행하여 추가적인 데이터 손실을 최소 하하는 것이 가장 좋은 방법이다.[5]
  • 윈도우 재설치 : 윈도를 재설치할 경우 하드디스크의 빈 공간으로 표시된 영역에 랜덤으로 데이터가 작성되기 때문에 기존 데이터 영역에 새로 설치한 운영체제나 프로그램이 얼마나 덮어쓰기 되었는지에 따라서 복구율이 달라지게 된다. 기존의 데이터의 영역 값이 보존되어 있다면 복구가 가능하지만 이미 덮어쓰기가 진행되어 기존 흔적을 손실한 경우 해당 자료는 손상되어 확인 불가능한 경우가 있다. 중요한 것은 재설치 이후 추가 작업 및 사용을 중단해야 복구 성공률을 높일 수 있다.[5]
  • 파일 불량 : 바이러스, 파일 저장 오류, 기타 시스템 오류로 인한 데이터 파일 손상의 경우 파일명, 용량, 시간 등 시스템 상에서 데이터 정보가 사라지는 경우가 있다. 또는 정상적으로 존재하지만 파일이 열리지 않거나, 알아볼 수 없는 특수 기호나 문자로 확인되는 경우가 발생한다. 증상은 비슷하게 나타나지만 다양한 원인으로 발생되기 때문에 정확한 진단을 하여, 증상을 파악한 후 그에 따른 적절한 복구 작업이 필요하다.[5]
  • 파일 시스템 불량 : 시스템 에러, 바이러스, 기타 오류로 인해 하드디스크 인식 영역이 손상되면 드라이브를 제대로 인식하지 못하는 경우가 있다. 하드디스크는 인식하지만 부팅이 안되거나 다른 컴퓨터에 하드디스크를 연결했을 때 드라이브, 폴더, 파일명이 알아볼 수 없는 특수 기호 또는 문자로 표시되면 즉시 컴퓨터 사용을 중단해야 한다. 무리하게 인식시키려고 계속해서 연결을 시도하거나 프로그램을 실행시키게 되면 저장된 데이터 영역의 추가 손상을 일으켜 파일이 손상되는 경우가 있다.[5]
  • 체크디스크(Checkdisk) : 체크디스크는 정상적인 시스템에서 디스크에 대한 상태를 점검하고 오류를 수정하는 기능을 가지고 있는 윈도우에서 기본적으로 제공하는 서비스다. 하지만 시스템 오류가 있는 상태 및 시스템 에러가 발생된 불안정한 상태에서 체크 디스크가 작동하게 정상적인 데이터 영역을 오류가 발생된 것으로 인식하여 폴더 이름은 물론 파일 이름까지 모두 변형시켜 다시 저장하는 경우가 있다. 혹시 모를 상황을 대비해 중요한 자료는 다른 저장 장치에 백업을 한 후 진행해야 하며, 데이터를 손실한 경우 다른 추가 작업을 중단하고 복구작업을 진행해야 자료를 복원할 수 있다.[5]
  • 바이러스 감염 : 시스템 영역과 데이터 영역 값을 변형시키고, 시스템 다운 및 데이터 파일을 손상시켜 사용을 불가능하게 하는 문제를 발생시킨다. 바이러스는 그 종류와 특성에 따라 다양한 증상 및 손상을 나타내므로, 바이러스 감염으로 의심될 경우 추가 확인 작업을 중단하고 복구 의뢰하는 것이 성공률을 높일 수 있다. 만약 저장 장치를 다른 컴퓨터에 연결하여 치료 및 복구할 경우 시스템을 통해 바이러스가 옮기지 않도록 주의해야 하며, 치료 과정에서 원본 데이터가 손상되는 경우도 있기 때문에 신중히 판단하여 진행해야 한다.[5]
  • 데이터 영역 불량 : 주로 윈도우 재설치와 같은 덮어쓰기가 진행되면 원본 데이터의 흔적이 완전하지 않아 손상된 상태로 확인되므로, 증상 발생 이후 추가 작업은 중단해야 한다. 원본 데이터 자체가 손상되는 경우가 많기 때문에, 복원작업을 통해 파일의 이름이나 용량은 확인 가능하지만 실질적인 내용이 손상되거나 정상적으로 열리지 않는 경우가 있다.[5]

물리적 손상 복구[편집]

물리적 손상 즉, 하드웨어 손상은 물리적으로 결함이 생신 것으로써 디스크가 인식이 안된다거나 하는 디스크 자체에 손상을 의미한다. 물리적손상은 소프트웨어 손상에 비해 복구작업이 다소 어려운 편이라, 작업시간이 소프트웨어 증상보다 다소 1~2일 정도 더 소요되며, 비용 면에서도 부담이 가는 증상이다. 또한 소프트웨어 증상과 달리 오픈 작업이 진행되기 때문에 재사용이 불가능하다는 것도 잘 알아두어야 한다. 대체 부품은 동일한 제조사 모델로 교체하는 것이 적절하다. 원인 불명인 경우 논리보드, 헤드, 스핀들 모터의 순서대로 교환 및 복구를 시도하면 된다. 먼지, 온도, 습도에 민감하므로 클린 룸(Clean Room) 내에서 분해, 조립을 수행한다.

  • 배드 섹터(Bad Sector) : 저장 장치에 데이터를 기록하거나 기록된 정보를 읽어낼 수 없는 영역이 발생하는 것으로 대부분 컴퓨터를 사용하는 중에 발생한다. 주로 디스크 표면의 손상으로 발생되며 하드디스크는 인식이 되지만 부팅 속도가 상당히 오래 걸리고, 심한 경우 부팅이 불가능한 경우도 있다. 다른 컴퓨터에 연결해도 드라이브 접근이나 데이터 확인이 불가능하고 내용을 볼 수 없다. 주요 발생 원인은 작동 중에 외부 충격으로 인한 디스크 표면 손상과 정지적인 사용에 의한 플래터 자화 성질이 약해진 경우 주로 발생하게 된다. 대부분 장비를 통해 정상적인 영역의 데이터 정보를 읽어내는 경우가 많지만 필요한 경우 손상된 부품을 수리/교체해야 하며 이때 먼지나 이물질로 인한 추가 손상을 막기 위해 클린 룸, 클린벤치와 같은 안전한 시설이 갖추어진 곳에서 작업이 진행되어야 한다.[6]
  • 하드디스크 인식 불량(Hard Disk Fail) : 여러 가지 원인에 의해 증상이 나타난다. 전원은 정상적으로 공급되지만 인식이 안되는 경우에는 하드디스크 내부의 헤드 손상으로 인하여 많이 발생하며, 전원 공급이 불가능한 경우 PCB 회로 기판의 손상으로 인식이 안되는 경우가 있다. 또한 디스크의 펌웨어 손상 및 특정 인식 영역의 손상으로 나타나는 경우가 있다. 여러 가지 원인에 의한 증상을 파악하고 그에 따른 올바른 작업이 필요하기에 증상 발생 이후 가능한 원본 상태를 유지하여 복구 의뢰하는 것이 복구 성공률을 높일 수 있다. 헤드와 플래터 손상, 스핀들 모터 손상 및 배드 섹터와 같이 디스크 내부 손상으로 인해 발생한 경우 손상된 부품을 수리/교체해야 하며, 정보 손실이 나타난 경우 소프트웨어 작업을 같이 병행해야 정확한 데이터 확인이 가능하다.[6]
  • PCB 회로 기판 손상 : PCB 회로 기판 손상의 경우 과전압에 의한 전기 쇼트로 발생하는 경우가 많다. 또한 PCB 회로 기판의 과다한 열 발생으로 각종 컨트롤러 집이 손상되어 하드디스크 작동이 불가능한 경우도 있다. 최근 하드디스크의 경우 PCB 회로 기판의 컨트롤러 정보와 디스크의 정보가 호환되어야 정확한 인식이 가능한 제품이 대부분이어서 PCB 손상으로 인한 데이터 복구가 간단하지 않다. 오히려 호환되지 않는 PCB를 연결할 경우 잘못된 디스크 컨트롤로 인해 오작동 발생 및 디스크의 치명적인 손상이 나타날 수 있기 때문에 주의해야 한다. 또한 증상이 심한 경우 PCB 회로 기판 이외에 디스크 내부까지 손상되는 경우가 있기 대문에 증상 발생 시 하드디스크 보관에 주의해야 하며, 무리한 전원공급을 중단하고 복구작업을 진행하는 것이 좋은 방법이다.[6]
  • 하드디스크 소음 발생 : 정상적인 하드디스크에서도 스핀들 모터가 작동하는 소음과 헤드가 데이터 정보를 읽기/쓰기 하는 과정에서 나타나는 일정한 소음은 발생한다. 하지만 평소와는 다르게 소음이 심하게 발생할 경우 대부분 하드디스크 내부에 문제가 생긴 상태이다. 주요 원인으로는 헤드가 손상되어 제어가 안된 상태로 반복적으로 소음을 발생시키는 경우가 많으며, 이 상태를 방치하고 계속해서 전원을 공급하게 되면 불량 난 헤드가 플래터 표면까지 손상시키는 경우가 있으므로 소음 발생 시 바로 전원 공급을 중단해야 한다. 헤드 손상으로 인한 하드디스크 소음 발생의 경우 손상된 헤드의 교체 작업이 필요하므로 먼지나 이물질로 인한 추가 손상을 막기 위해 클린 룸, 클린벤치와 같은 안전한 시설이 갖추어진 곳에서 복구작업이 진행되어야 한다.[6]
  • 스핀들 모터 손상 : 스핀들 모터는 플래터를 고속으로 회전시키는 장치로서 주로 외부 충격에 의해 고장 나는 경우가 많다. 특히 전원이 공급되어 작동하고 있는 상태에서 충격이 발생할 경우 순간적으로 모터가 굳어서 더 이상 작동을 하지 않아 정보를 읽을 수 없는 문제가 발생한다. 충격이 심할 경우 플래터 위에서 데이터 정보를 읽기/쓰기 작동을 하는 헤드가 플래터 표면을 손상시켜 플래터 표면이 찍히거나, 스크래치가 발생하는 등 복구작업을 하기에는 힘든 상황이 나타나기도 한다. 스핀들 모터에 손상이 생긴 경우 하드디스크 내부의 전반적인 교체 작업이 필요하므로 위에 증상과 마찬가지로 먼지나 이물질로 인한 추가 손상을 막기 위해 클린 룸, 클린벤치와 같은 안전한 시설이 갖추어진 곳에서 복구작업이 진행되어야 한다.[6]
  • 헤드 멈춤 현상 : 불안정한 전원 차단 및 외부 영향으로 인해 하드디스크의 작동이 멈출 경우 헤드가 플래터 데이터 영역 위에 붙은 상태로 작동이 제대로 이루어지지 않는 증상이 발생하게 된다. 헤드가 플래터 위에 고정되어 작동할 수 없는 주요 원인으로는 정전과 같은 갑작스러운 전원 차단의 경우 발생 확률이 높으며 시스템이 작동하고 있는 상황에서 외부의 충격과 같은 영향을 받아서 스핀들 모터가 고장 나서 발생하는 경우도 있다. 플래터에는 데이터 정보가 기록되어 있으므로, 손상이 발생하면 정밀 작업 및 불량 난 부품의 수리/교체 작업이 필요하다.[6]
  • 외부 충격 : 하드디스크는 다른 전자제품보다 충격이나 전기에 매우 민감하여 디스크에 충격이 가해질 경우 내부적으로는 심한 손상이 발생되어 하드디스크를 사용하지 못하게 된다. 헤드, 스핀들 모터, 플래터의 손상이 발생되어 전원 연결 시 내부에서 심한 소음이 나타나고, 정상적인 작동이 불가능하여 인식을 못 하는 경우가 많다. 외부 충격은 플래터에 스크래치를 발생시킬 수 있으며, 스크래치와 같은 표면적인 손상은 데이터에 치명적이므로 복구가 사실상 불가능하다. 외부 충격 이후 계속적으로 전원을 공급하게 되면 플래터에 추가 손상이 나타날 수 있기 때문에 전원공급을 중단하고 전문 업체에 문의하여 데이터 손실을 최소화해야 한다.[6]
  • 침수 : 음료 등의 액체를 쏟거나, 여름 장마철에 주로 발생하는 침수 피해의 같은 경우 무리하게 이물질을 닦아내거나 청소를 하면 오히려 하드디스크가 훼손되어 복구율이 떨어지는 경우가 있다. 다른 전자제품과 마찬가지로 물이나 습기에 취약한 특징이 있기 때문에 관리에 주의해야 한다. 침수된 하드디스크는 1차적으로 PCB 기판의 부식이 발생되어 정상적인 전원공급이 불가능하다. 또한 오염물질이 하드디스크 내부까지 들어가서 플래터, 헤드, 스핀들 모터 등 내부에 심각한 손상을 입힐 수 있으므로 주의해야 한다. 청소를 하여 외관상 이물질이 제거되었다 하더라도 PCB 회로 기판의 부식이나 하드디스크 내부로 들어간 오염물질로 인해 전원 연결 시 심각한 디스크 손상을 일으킬 수 있다. 하드디스크가 침수된 경우 상태를 그대로 유지하여 최대한 빠른 시간에 복구 전문 업체에 문의 및 의뢰하는 것이 가장 안전한 방법이다.[6]
  • 화재 : 화재로 인해 손상된 하드의 경우 회로 기판은 물론 내부적으로 헤드와 모터를 포함하여 여러 가지 손상을 발생시키고 심한 경우 플래터의 자성물질이 손상되어 복구 자체가 불가능하게 파손되는 사례도 있다. 화재 진압 과정에서 침수나 기타 충격에 의해 추가 손상이 나타나는 경우도 있으며, 디스크의 형태를 알아볼 수 없을 정도로 녹아내리는 경우도 있다. 침수 건과 마찬가지로 손상된 상태 그대로 최대한 빨리 복구 전문 업체에 문의 후 의뢰하는 것이 가장 안전한 방법이다.[6]
  • 디스크 플래터 긁힘 : 헤드 불량이 하드디스크 내의 플래터에 손상을 주는 현상으로 하드디스크는 고속 회전을 하기 때문에 장기간 방치할 경우 원 형태로 스크래치가 발생하게 된다. 전원 연결 시 플래터가 긁히는 소음이 발생하므로 소음이 나타나면 즉시 전원을 차단하여야 저장된 데이터의 추가 손실을 최소화할 수 있다. 스크래치가 발생할 경우 사실상 정상적인 부분도 읽기 어려운 상태가 되기 때문에 복구를 위해서는 충분한 복구작업 시간을 필요로 하는 경우가 많다. 손상된 부품을 수리/교체하는 작업이 필요하므로 클린 룸, 클린 벤치가 갖추어지고 충분히 신뢰가 확보된 데이터 복구 업체에 의뢰하여야 데이터 손실을 최소화할 수 있다.[6]

예시[편집]

  • 스마트폰 : 논리적 요소로서 삭제나 초기화, 물리적 요소로서 고장, 침수, 파손된 스마트폰의 데이터 복구를 말한다. 주요 복구 데이터로는 전화번호부, 사진, 동영상, 음성녹음, 문서, 카카오톡, 문자 메시지 등이 있다. 논리적으로 삭제를 하거나 초기화한 스마트론의 데이터 복구는 루팅을 통한 데이터 분석 및 획득 작업으로 이루어지며, 전문 복구센터에서 작업이 가능하다. 물리적으로 침수나 파손된 스마트폰은 메인 칩 MR 장비를 통해 데이터를 획득하는 방식으로 복구 전문센터에 의뢰해야 한다.[7]
  • 하드디스크 : 내장 HDD는 부팅 불가, 시스템 오류, 바이오스 인식 불가, PCB는 키보드 고장, 배드 섹터, CRC 오류, 포맷 후 윈도우 재설치 등의 문제로 인해 복구를 하는 경우가 많다. 외장 HDD는 충격, 떨어뜨림, 인식 불가, 포맷 메시지나 액세스 불가 메시지, CRC 오류 등의 문제로 복구를 하는 경우가 많다. 주요 복구 데이터로는 업무 문서, 사진, 이미지, 영상, 도면 등이 있다. 삭제나 포맷을 한 경우에는 시중에 나와 있는 무료 복구 프로그램으로 개인적으로 복구를 시도해 보는 경우가 많으며, 복구하기가 매우 쉽다. 하드디스크의 시스템 장애나 인식 불가, 디스크 손상(배드 섹터, CRC 오류, I/O 장치 오류). SA 문제, 논리보드 고장, 헤드 고장, 스핀들 모터 고장 등의 문제는 복구 전문센터를 통해 진단을 받고 복구를 의뢰하는 것이 좋다.[7]
  • 메모리 : 논리적의 문제로서 삭제, 포맷, 바로 가기 바이러스, 시스템 오류 등이 있다. 물리적인 문제로서 Cell 손상에 의한 포맷 메시지, 액세스 불가 메시지, 인식 오류, 시스템 손상 등이 있다. 그 외에 회로도나 컨트롤러 문제 등이 존재한다. 주요 복구 데이터로는 사진, 문서, 영상, 보안문서 등이 있다. 논리적인 삭제 포맷, 그리고 논리적 시스템 오류 등은 복구 프로그램이나 체크 디스크 등을 이용하여 개인적인 해결이 가능하다. 하지만 데이터가 기록된 공간(Cell)이 손상되어 RAW 상태에서는 복구 전문센터에 의뢰하는 것이 좋다.[7]
  • SSD : 노트북 내장 SDD는 바이오스 인식 불가로 입고되는 경우가 많다. 외장 SDD는 Cell BAD, 인식 불량, 인식 불가로 입고되는 경우가 많다. 노트북 내장 SSD는 BIOS 인식 불가로 입고되는 경우가 많다. 논리적인 삭제 포맷은 개인적으로 복구 시도를 해보는 경우가 많으나 Trim 기능으로 인해 복구가 어려운 경우와 실수로 오버라이트 시키는 경우가 있어서 주의할 필요가 있다. SSD의 인식 문제나 Cell BAD는 전문 복구센터에 의뢰하는 것이 바람직하다.[7]

복구 시점[편집]

일정 간격으로 백업을 하는 것만으로 언제나 손상된 데이터베이스를 문제없이 복구할 수 있을 것이라 안심할 수는 없다. 백업의 방법과 복구 시점에 따른 복구 방법은 여러 가지가 있을 수 있으며 상황에 맞는 것을 제대로 적용할 수 있는 충분한 지식이 없다면 복구는 여전히 쉽지 않은 일이다. 오라클은 작업의 내용을 데이터 파일에만 저장하지 않고 작업의 순서와 내용을 redo 로그 파일에도 저장한다. 즉, 로그 정보가 안전하다면 백업한 데이터 파일로 손상된 데이터 파일만 복원한 후 로그 정보에 있는 작업을 순서대로 백업 시점부터 모두 다시 적용하여 데이터베이스를 장애 시점까지 복구할 수 있다. 그러면 커밋이 완료된 데이터는 데이터 파일에 모두 다시 저장되어 장애가 일어난 시점까지 입력된 데이터는 손실되지 않는다. 이렇게 데이터베이스를 장애 시점까지 복구하는 방법을 완전 복구라고 한다. 하지만 필요에 따라서는 로그 정보가 모두 정상적으로 보존되었더라도 입력 작업의 일부까지만 복구하는 경우도 있다. 예를 들어, 입력 작업 중 수요일 이후 입력 작업이 잘못된 입력 작업이었다면 복구 시점을 수요일 이전까지로 제한해서 수요일 입력 작업 이후는 작업이 이루어지지 않도록 복구할 수 있는데, 이렇게 특정 시점까지만 로그 정보를 적용하는 것을 불완전 복구라 한다.

복구에 필요한 파일[편집]

복구에 꼭 필요한 파일을 미리 백업해 두지 않으면 데이터베이스에 문제가 생기더라도 원하는대로 복구할 수 없을 것이다. 그러므로 각 복구 시점마다 어떤 백업 파일이 필요한지 미리 알아두고 그에 따라 백업을 하는 것은 아주 중요한 일이다. 다음은 데이터베이스를 안전하게 복구하기 위해 사용하는 파일이다. 그 특성에 따라 복구를 위해서 백업 대상이 되는 파일과 로그 정보를 담고 있는 파일로 나뉜다.

  • 복구를 위해서 백업 대상이 되는 파일
  1. 데이터 파일
  2. 컨트롤 파일
  3. redo 로그 파일
  • 로그 정보를 담고 있는 파일
  1. 장애 시점의 로그 파일
  2. 백업 이후 생성된 아카이브 로그 파일

데이터베이스의 손상 원인이나 복구 방법에 따라 일부 파일만 사용하는 경우도 있지만 앞으로 어떤 원인으로 데이터베이스에 손상이 일어날 것인지 미리 알 수 없기 때문에 이와 같은 파일들을 모두 안전하게 보존해야 한다. 그러므로 백업 파일은 시스템과 분리된 별도의 저장 매체에 정기적으로 보존해야 하고, 로그 파일이나 아카이브 로그 파일은 현재 운영 중인 시스템에 생성되므로 여러 디스크로 다중화하여 디스크 손상으로부터 안전하게 보존해야 한다. 또한 어떤 경우에 어떤 파일을 사용해야 하는지 정확하게 알아두어야 한다.

닫힌 백업 파일을 이용한 복구를 수행하기 위해 필요한 파일

데이터베이스를 백업 시점으로 되돌리는 닫힌 백업 파일을 이용한 복구방법은 가장 기본적이고 간단한 복구 방법이다. 로그 정보를 사용하지 않으므로 로그 파일은 필요 없지만, 데이터베이스를 이상없이 실행하기 위해 백업 시점의 데이터 파일과 redo 로그 파일, 컨트롤 파일이 필요하다. 로그 시퀀스 넘버가 20번인 시점에서 데이터베이스에 장애가 발생한 경우, 현재 시스템에서 가장 최근에 백업한 것이 로그 시퀀스 16번이었다면, 백업 시점으로 복구하기 위해 시퀀스 넘버가 16인 redo 로그 파일과 동일 시점에서 백업한 데이터 파일, 컨트롤 파일을 로그 시퀀스 넘버 20번인 데이터베이스에 모두 덮어씌우게 된다. 이 경우 로그 시퀀스 16번 이후에 입력된 데이터는 모두 상실되므로, 복구가 끝난 뒤 사용자에게 로그 시퀀스 16번 이후에 입력하였던 데이터를 다시 입력하도록 알려주어야 한다.

완전 복구에 필요한 파일

모든 로그 정보를 적용하여 데이터베이스를 현재 시점까지 복구하는 방법이다. 보통 데이터 파일에 장애가 생긴 경우 이용하는 방법으로, 손상된 데이터 파일과 백업 이후의 로그 정보를 담고 있는 아카이브 로그 파일이나 redo 로그 파일이 있어야 한다. 주의할 점은 백업된 파일 중 redo 로그 파일이나 컨트롤 파일 대신 장애 시점의 redo 로그 파일과 컨트롤 파일을 사용한다는 것이다. 일단 장애 시점으로 데이터베이스를 복구하는 것이기 때문에 장애 시점의 데이터베이스 정보가 있는 컨트롤 파일과 장애 시점까지 커밋된 모든 로그 정보를 담고 있는 자앵 시점의 redo 로그 파일도 꼭 필요하다. 그리고 이 경우네는 모든 데이터 파일을 복구하는 것이 아니라 백업 파일 중에서 정상적인 데이터 파일은 제외하고 손상된 파일만을 복원한다.

불완전 복구에 필요한 파일

불완전 복구는 데이터베이스 관리자가 백업 이후에 지정한 특정 시점으로 되돌리는 복구 방법으로, 어느 시점 이후의 입력 내용이 잘못되거나 중요한 데이터를 실수로 삭제하였을 때 이를 복구하기 위해 장애 이전 시점이나 권리자가 원하는 특정 시점으로 되돌릴 때 사용하는 방법이다. 그러므로 복구 이후의 데이터베이스는 현재 시점이 아니라 과거의 시점으로 돌아간다. 완전 복구에서는 손상된 파일 이외의 나머지 데이터 파일은 복구 시점과 일치하므로 별도의 작업을 할 필요가 없지만 불완전 복구 방법을 사용할 때에는 모든 데이터 파일을 과거 시점으로 되돌려야 하므로 백업 파일에서 데이터 파일을 모두 복원해야 한다. 즉, 불완전 복구에서는 백업된 데이터 파일 전체와 현재까지의 아카이브 로그 파일, 그리고 경우에 따라 현재 시점의 redo 로그 파일이 필요하다.

불완전 복구를 실행하는 일련의 과정에서 사용자 장애로 매우 중요한 데이터를 삭제한 경우, 데이터베이스에 대한 물리적인 손상은 없다. 중요한 데이터가 지워진 경우 데이터베이스의 복구는 장애를 인지한 현재 시점이 아니라 데이터를 삭제하기 이전 시점으로 복구를 수행해야 하는데, 이 경우 모든 데이터 파일을 수정되어야 하므로 먼저 전체 데이터 파일을 복원한 다음, 장애 이전 시점인 복구 시점까지 아카이브 로그 파일을 적용한다. 그러나 이와 같이 복구를 수행하는 경우 복구가 정상적으로 수행되었을지라도 데이터베이스는 데이터 파일, 컨트롤 파일, redo 로그 파일의 동기화 정보가 서로 다르므로 정상적인 방법으로 데이터베이스를 시작할 수 없다. 또한 복구 시점 이후에 입력된 데이터는 손실되므로, 복구가 끝난 뒤 관리자는 사용자에게 해당 시점 이후에 입력된 데이터를 다시 입력하도록 알려주어야 한다.

열린 백업 파일의 이용

데이터베이스 서비스를 한 순간이라도 정지할 수 없는 곳에서는 데이터베이스를 종료하고 백업을 실시하는 닫힌 백업을 수행할 수 없을 것이다. 오라클은 이런 경우에 닫힌 백업 대신에 기본 백업으로 열린 백업을 지원한다. 이 방법은 데이터베이스가 열려 있는 상태에서 데이터 파일을 테이블스페이스별로 하나씩 백업하는 것이다. 이 방법으로 백업받는 파일은 완전 복구나 불완전 복구와 같이 로그 정보를 이용한 복구에서만 사용할 수 있으며, 아카이브 로그 모드에서만 백업 작업을 수행할 수 있다.

운영환경 및 운영모드[편집]

오라클의 운영 모드는 백업 방법과 복구 방법 및 가능성을 결정하는 중요한 요소이다. 복구 방법과 복구 범위에 중요한 영향을 미치는 아카이브 로그 모드와 노 아카이브 로그 모드는 장애에 대한 복구 상황이 다르기 때문에 데이터베이스의 운영 및 활용 방법에 따라 적당한 모드를 선택하여 오라클을 설계하고 구성해야 한다. 다음은 일반적으로 제시하는 각 운영 모드에 적합한 데이터베이스 이용 환경이다.

노 아카이브 로그 모드 운영이 적합한 경우
  • 교육 환경이나 개발 환경과 같은 연습용 환경으로, 유실되어서는 안 되는 중요한 데이터는 입력하지 않는 환경
  • 장애로 인해 시스템을 복구해야 할 때 데이터에 어느 정도 손실이 일어나도 무관한 환경
  • 데이터의 추가나 변겨이 자주 발생하지 않고 입력이나 변경 작업은 주로 스크립트를 이용하여 일괄 작업으로 수행하는 환경
아카이브 로그 모드가 적합한 경우
  • 시스템을 365일, 24시간 무정지로 운영하는 환경
  • 장애 및 복구 중에 데이터의 손실이 절대 일어나면 안 되는 환경
  • 여러 사용자가 데이터를 자주 입력하고 변경하는 환경

각 경우에서 볼 수 있듯이 주로 연습용이나 데이터의 변화가 많지 않은 환경, 또는 교육용 환경이라면 다소 데이터가 유실되더라도 문제가 없는 노 아카이브 로그 모드를 운영해도 상관없을 것이다. 그러나 일반적으로 사용하는 시스템에서는 단순한 웹 게시판 등이 연결되어 있을 뿐이더라도 데이터의 손실이 큰 문제가 될 수 있으므로 특별한 경우가 아니라면 아카이브 로그를 사용하는 편이 유리하다. 오라클을 처음 설치하였을 때에는 기본적으로 노 아카이브 로그 모드로 설정되어 있다. 그러나 시스템을 정기적으로 점검할 수 있으며 데이터의 손실이 다소 일어나더라도 운영에 큰 문제가 없는 상황이라 해도 오라클의 기능을 완전히 이용하기 위해 아카이브 로그 모드로 운영하는 것을 권한다.

각주[편집]

  1. 자료 복구 위키백과 - https://ko.wikipedia.org/wiki/%EC%9E%90%EB%A3%8C_%EB%B3%B5%EA%B5%AC
  2. 데이터 복구란〉, 《리본 데이터》
  3. 길민권, 〈(김진국의 디지털포렌식-10) 덮어쓴 데이터 복구의 진실〉, 《데일리시큐》, 2013-01-22
  4. 4.0 4.1 4.2 4.3 4.4 무강, 〈데이터 인코딩 기법〉, 《티스토리》, 2010-08-13
  5. 5.0 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 씨앤씨, 〈데이터손실 유형- 소프트웨어 (논리적 손상) 증상 (데이터 복구)〉, 《네이버 블로그》, 2013-11-18
  6. 6.0 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9 씨앤씨, 〈하드디스크 하드웨어(물리적 손상) 증상 (데이터복구)〉, 《네이버 블로그》, 2013-11-19
  7. 7.0 7.1 7.2 7.3 씨앤씨, 〈데이터 복구하는 방법을 알아보자〉, 《네이버 블로그》, 2015-01-08

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 복구 문서는 하드웨어에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.