토요일 저녁에 아내와 함께 DVR이 왜 그녀가보고 있던 쇼를 갑자기 중단했는지 물었습니다. 나는 그녀에게 아마도 약간의 결함이라고 말했지만 나는 살펴볼 것이다. 나는 거실로 들어가서 보았고, 기본적으로 기본 디스크를 더 이상 사용할 수 없다는 오류가 표시되었습니다. 안좋다! 이것은 나의 3 일 공포 이야기의 시작이었다. ..
작은 배경
내 DVR은 실제로 PC에서 실행되는 전문 소프트웨어 (호기심이 많은 사람들을위한 SageTV)입니다. 이 소프트웨어는 매우 유연하여 다양한 측면을 모두 분리 할 수 있습니다. 중앙 제어, 예약 및 녹화를위한 별도의 시스템, 재생을위한 별도의 시스템 및이 스토리의 스타 인 스토리지를위한 별도의 시스템이 있습니다. 스토리지의 경우 Linux 파일 서버를 사용하며 LVM (Logical Volume Manager)을 사용하여 많은 별도의 동일하지 않은 드라이브를 운영 체제에서 볼 수있는 하나의 큰 (현재 6TB) 논리 드라이브로 집계합니다. 여러 TB의 데이터를 백업하는 것은 실용적이지 않으며, 데이터가 "그냥"TV 쇼이기 때문에 이에 대한 저의 백업 철학은 항상 신경 쓰지 않아도되었습니다. 최근 사건까지, 이 철학은 실제 사건에 의해 테스트되지 않았습니다.
데이터 복구 시도
DVR에서 오류가 발생하면 즉시 스토리지 서버를 살펴보기 시작합니다. 파일 시스템은 매우 느리고 응답 속도가 느리므로 LVM에 논리적 볼륨의 기본이되는 물리적 드라이브의 상태를 문의합니다. 오래 지연된 후 750GB 드라이브가 없다고 표시됩니다. 어 오! 서버를 재부팅하면 놀랍게도 드라이브가 다시 나타납니다. pvmove 명령을 실행하여 해당 드라이브에서 모든 데이터를 자동으로 마이그레이션하지만 2 % 미만으로 완료되지 않습니다.
데이터 읽기에 대해 매우 협조적이지 않은 드라이브에 직면했지만 적어도 BIOS에 표시되는 드라이브는 내가 가장 좋아하는 드라이브 복구 도구 인 Spinrite를 사용합니다. Spinrite는 일반적으로 이동식 미디어에서 부팅되지만 몇 년 전에 다양한 유틸리티를 위해 집에서 네트워크 부팅을 설정했기 때문에 미디어를 추적하는 것에 대해 걱정할 필요가 없었습니다. 일반적으로 네트워크에 연결하고 네트워크에서 부팅을 선택하면 여러 가지 문제를 해결할 수있는 다양한 도구가 있습니다. 문제는이 모든 마법 작업을 현재 중단 된 것과 동일한 시스템으로 만드는 시스템입니다. 별거 아니에요. Spinrite CD로 부팅하겠습니다. 몇 년 전만해도 내 파일 서버의 광학 드라이브는 유령을 포기했습니다. 그 당시 나는 그 기계에서 광 매체를 사용하지 않기로 결정했기 때문에 교체 할 필요가 없었습니다. 걱정하지 마세요. 기본 컴퓨터에서 광학 드라이브를 꺼냅니다. 주 컴퓨터의 전원을 끄고 광 드라이브를 꺼냅니다. 그런 다음 Spinrite 부팅 CD를 찾습니다. 찾을 수 없습니다! 우리는 몇 달 전에 새 집으로 이사했습니다. 그래서 모든 것이 약간 혼란에 빠졌습니다. 새 사본을 태울 것이라고 생각하지만 빈 광 매체를 찾을 수 없습니다! 다음 계획으로 부팅 가능한 플래시 드라이브! Google에서 메모리를 새로 고치기 위해 몇 분 후 부팅 가능한 Spinrite 플래시 드라이브가 있습니다. Linux 상자를 부팅하고 Spinrite를 시작합니다. 컴퓨터가 멈추고 충돌하는 것 같습니다. 변수를 없애기 위해 불량 드라이브를 PCI-e 확장 카드에 꽂는 것에서 마더 보드에 직접 꽂는 것으로 옮깁니다. 이제 Spinrite가 정상적으로 시작되지만 연결된 드라이브를 열거하는 데 오랜 시간이 걸립니다. 나는 나쁜 드라이브를 제외한 다른 모든 드라이브를 체계적으로 분리하지만 대기 시간에 관계없이 드라이브 열거를 끝내지 않습니다. 다음 계획에! 나는 리눅스 박스에서 드라이브를 꺼내서 메인 컴퓨터에 연결하고 반짝이는 새로운 Spinrite 플래시 드라이브로 부팅한다. Spinrite가 시작되고 즉시 드라이브를 확인한 후 데이터 복구를 시작하도록 지시하고 마침내 몇 가지 진전을 이루고 있다고 만족했습니다. 아마 10 분 후에 다시 확인하고 화면에 오류가 있으며 드라이브가 다시 사라진 것 같습니다. 좌절, 나는 몇 번 더 시도하고 Spinrite에게 드라이브의 다양한 부분에서 시작하도록 지시하지만 매번 같은 결과를 얻습니다. 이것이 결국 나에게 도움이되지 않는 것 같습니다.
비합리적인 희망에 부응하여 드라이브를 Linux 상자에 다시 넣고 전원을 켭니다. 놀랍게도 드라이브가 나타나고 LVM이 모든 것을 활성화합니다. 운 좋게도 다른 pvmove 명령을 실행하여 드라이브에서 데이터를 다시 이동하려고 시도합니다. 초기에는 드라이브에서 읽을 수 없다는 오류 메시지가 표시되지만 놀랍게도 pvmove는 계속 진행되어 100 % 완성에 가까워지고 있습니다. 혼란, 안도 및 흥분의 혼합은 나를 씻는다. 내가이 상처에서 벗어날까요? 안타깝게도 LVM이 커버 아래에서 pvmove를 완전히 마무리하기 위해 수행하는 마지막 작업은 제어중인 모든 드라이브에 업데이트 된 로그를 작성하는 것입니다. 물론 불량 드라이브에 쓰려고 할 때 실패하므로 전체 프로세스가 중단됩니다. 승리의 턱에서 다시 한번 패배! 다시 Google로 뛰어 들어 한 번에 모든 데이터를 이동하는 대신 pvmove 명령이 얼마나 많은 데이터를 이동하는지 제어 할 수 있습니다. 나는 이것을 실험하고 한 번에 데이터의 작은 부분을 성공적으로 이동시킵니다. 탐욕스럽고 드라이브가 몇 번 사라지지만 컴퓨터의 전원을 껐다 켜면 항상 다시 나타납니다. 아마도 드라이브의 특정 부분 만 나쁘다는 이론을 바탕으로 드라이브의 시작 부분에서 작업하는 대신 뛰어 다니기 시작합니다. 이 작업을 몇 번 반복 한 후 750GB 중 40GB를 제외하고 드라이브에서 안전하게 이동했습니다. 나머지 40GB의 경우 시도한 결과에 관계없이 이동하지 못했습니다. 지금은 일요일 저녁에 지쳤으므로 다음날 잠자리에 들고이 문제를 해결하기로했습니다.
다음 날, 잠을 자고 직장에서 상반기를 보낸 후 마지막 40GB의 녹화 된 TV 쇼를 신경 쓰지 않고 LVM 구성에서 드라이브를 제거하기 위해 총알을 물기로 결정했습니다. . 나는 이것을 여러 번 전에 했으므로 매우 원활하게 진행됩니다. 다음으로 정리 목록에서 파일 시스템 중간에있는 구멍을 복구합니다. 750GB가 아닌 40GB 만 있으면 너무 나빠질 수 없습니다. 잘못된! 수리 후, 시련이 시작되기 전과 비교하여 900GB의 여유 공간이 추가되었으므로 약간 멈췄습니다. 어쨌든 난 그냥 TV 였어. 내 DVR은 3 일이 지난 후 다시 정상적으로 작동하며, 매번 여분의 두뇌주기마다이를 생각하지 않아도됩니다.
교훈
그래서이 모든 것에서 무엇을 배웠습니까? 정말 중요한 일을 더 잘 했어야 했어요. 이것은 몇 주 전에 일어 났으며 그 당시에는 사라진 TV 콘텐츠를 놓치지 않았습니다. 그러나 나는 3 일 동안 TV를 사용할 수없고 3 일 동안 스트레스가 많은 위기에 처한 자신을 막는 것이 유감입니다. 처음에 데이터 복구를 포기했다면 기능은 3 일이 아닌 약 1 시간 내에 복원되었을 것입니다. 나는 대부분의 시간에 우리의 데이터가 소중하다는 것을 잘 알고 있지만, 이 상황에서는 그렇지 않았습니다.
둘째, 데이터가 정말 귀중하고 99 %의 시간이 지나면 데이터를 보호해야합니다! 데이터를 백업하십시오. 변명의 여지가 없습니다. 내 컴퓨터에있는 아들의 수천 장의 사진과 같이 바꿀 수없는 데이터의 경우 3 개 이상의 장소에 백업해야합니다. 그 중 하나는 클라우드 백업 공급자입니다. DVR 스토리지에 관해서는 여전히 클라우드에 백업하는 것이 실용적이지 않다고 생각하지만 요즘 드라이브 가격으로 인해 RAID로 보호하지 않아도된다는 변명의 여지가 없습니다. 할거야. 몇 년 전에 스토리지 클러스터를 처음 설정했을 때 여러 TB의 풀에 도달하려면 10 개 이상의 드라이브가 필요하다고 생각합니다. 방금 가격을 확인한 후 3TB 드라이브를 100 달러 미만으로 구입할 수 있습니다. 데이터를 보호하지 않은 채로 둘 이유가 없습니다. 이와 같은 데이터 손실이 다시 발생하면 실제로 내 잘못입니다.
