재 할당 된 섹터를 계산하지 않는 불량 섹터 / 하드 디스크에 0을 쓸 수 없음


10

현재 보류중인 섹터가 "45"라고보고하는 드라이브가 있습니다. 내가 사용이 배드 블럭 하는 분야를 확인하기를 내가 그들에 0을 쓰기 위해 노력 해왔다 DD .

내가 이해 한 바에 따르면, 불량 섹터에 직접 데이터를 쓰려고 할 때 재 할당을 트리거하여 현재 보류중인 섹터를 하나씩 줄이고 재 할당 된 섹터 수를 늘려야합니다.

그러나이 디스크에서 Reallocated_Sector_Ct 및 Reallocated_Event_Count 원시 값은 모두 0이며 불량 섹터에 0을 쓰려고하면 dd 가 I / O 오류와 함께 실패합니다. 그러나 좋은 분야에 글을 쓸 때 dd 는 잘 작동합니다.

# dd if=/dev/zero of=/dev/sdb bs=512 count=1 seek=217152
dd: error writing ‘/dev/sdb’: Input/output error

이것은 어떤 식 으로든 내 드라이브에 재 할당에 사용할 예비 섹터가 없음을 의미합니까? 내 운전은 일반적으로 끔찍한 사람입니까? (드라이브는 실제로 내 것이 아니며 친구를 돕고 있습니다. 그들은 싼 드라이브 나 무언가를 얻었을 것입니다.)

관련이있는 경우 smartctl -i 의 출력은 다음과 같습니다.

Model Family:     Western Digital Caviar Green (AF)
Device Model:     WDC WD15EARS-00Z5B1
Serial Number:    WD-WMAVU3027748
LU WWN Device Id: 5 0014ee 25998d213
Firmware Version: 80.00A80
User Capacity:    1,500,301,910,016 bytes [1.50 TB]
Sector Size:      512 bytes logical/physical
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS (minor revision not indicated)
SATA Version is:  SATA 2.6, 3.0 Gb/s
Local Time is:    Fri Oct 18 17:47:29 2013 CDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

업데이트 : 디스크에서
실행 shred되어 Current_Pending_Sector가 0이되었습니다. 그러나 Reallocated_Sector_Ct 및 Reallocated_Event_Count는 여전히 0이며, dd는 이제 이전에는 불가능했던 섹터에 데이터를 쓸 수 있습니다. 이것은 다른 몇 가지 질문으로 이어집니다.

  • 디스크가 재 할당을하지 않는 이유는 무엇입니까? 나는 지금 재 할당 할 수 없었던 섹터에 직접 데이터를 쓸 수 있기 때문에 재 할당이 발생했다고 가정합니다.

  • 파쇄가 왜 dd가 아닌 재 할당을 유발 했습니까? 파쇄가 0이 아닌 임의의 데이터를 기록한다는 사실이 차이를 만들어 줍니까?


다른 SMART 값은 어떻습니까? 가 Uncorrectable Sector Count0보다?
Synetech

내가 생각하는 Offline_Uncorrectable은 같은 값을 갖습니다. raw 값은 25입니다.
MetaNova

네, 그렇습니다. 드라이브가 실제로 나쁜 모양 인 것 같습니다. 빨간색 행 (건강에 중요한 값)에 특히주의하면서이 테이블 에 대해 값을 확인할 수 있습니다 . 가장 좋은 방법은 가치가 있거나 대체 할 수없는 모든 것을 다른 곳으로 복사 (이동하지 않음)하고 재부팅하여 전원을 껐다가 다시 켜면 여전히 잘 닦이는 것입니다 (바람직하게는 전용 도구 로) 다운로드 한 비디오와 같은 중요하지 않은 데이터를위한 여분의 스토리지
Synetech

답변 주셔서 감사합니다. 내 주요 질문은 아마도 해당 섹터를 재 할당 할 수없는 이유 일 것입니다. 그것은 단지 섹터가 나쁘다는 것을 감지해서는 안되며, 그들을 빈 공간으로 피하고 재 할당하고 계속해야합니까? 디스크가 오래 전에 정리 되었기 때문에 디스크의 데이터에 대해 걱정하지 않습니다. 제 친구는 피할 수 있다면 1.5TB 문진을 갖고 싶어하지 않습니다.
MetaNova

그것은 기대하는 것처럼 보이지만 머리가 좋지 않을 수 있습니다. 그렇다면 드라이브를 읽으려고하면 불량 헤드가있는 플래터에 액세스 할 때까지 작동합니다. 읽을 헤드가 없으면 전체 플래터에 액세스 할 수 없기 때문에 많은 읽기 오류가 발생합니다. 물론 섹터 45는 이미 재 할당 되었으나 SMART가 업데이트되지 않았기 때문에 나쁘다고 말합니다. 보증 기간이 만료 몇 달 전에,하지만 당신은 그들에게 이메일을 시도 할 수 있습니다 어쩌면 그들은 의례 교체 할 수 있습니다.
Synetech

답변:


9

WD15EARS 드라이브 (및 가장 최근에 생산 된 다른 드라이브)는 Advanced Format을 사용 합니다. 즉,이 드라이브의 실제 물리 섹터 크기는 4 KiB이며 기존의 512 바이트 섹터 크기는 에뮬레이션됩니다. 이 때문에 단일 4 KiB 물리 섹터가 나빠지면 해당하는 에뮬레이트 된 512 바이트 섹터 8 개를 모두 한 번에 읽을 수 없게됩니다.

( 일부 WD15EARS 드라이브는 잘못된 물리 섹터 크기를보고 하기 때문에 Sector Size: 512 bytes logical/physical출력 smartctl이 정확하지 않습니다.  드라이브에 펌웨어 버전이있는 것 같습니다.)

또한 단일 에뮬레이트 된 512 바이트 섹터가 기록 될 때 Advanced Format 드라이브는 실제로 전체 4KiB 물리 섹터를 읽고 해당 512 바이트 부분을 변경 한 다음 전체 물리 섹터를 미디어에 기록해야합니다. 미디어가 양호하면이 읽기-수정-쓰기 작업은 실제 512 바이트 물리 섹터가있는 드라이브와 비교하여 상당히 느려집니다. 그러나 4 KiB 물리 섹터가 잘못되어 읽을 수 없으면 섹터를 완전히 다시 쓰지 않는 쓰기 작업이 실패합니다. 이 때문에 사용하여 같은 드라이브 부문의 재 할당을 강요 할 수 dd와 함께 bs=512 count=1 - 당신은 적어도 사용해야 bs=512 count=8하고 있는지 확인 그의 섹터 번호seek= 옵션은 8의 배수입니다 (이것은“Windows XP 호환”점퍼가 설치되지 않은 것으로 가정합니다. 그렇지 않으면이 점퍼에 의해 추가 된 정렬 오프셋도 고려해야합니다.)

재 할당 dd이 실패 하는 또 다른 이유 는 기본적으로 Linux가 블록 계층의 캐시를 사용하여 블록 장치에 액세스하기 때문에 소프트웨어에서 읽기-수정-쓰기 작업을 수행 할 수 있으며 읽을 수없는 섹터가 발생하면 실패 할 수도 있습니다. oflag=direct지정된 장치에 대해이 캐시를 무시 하는 옵션을 추가 할 수 있습니다 of=...( iflag=direct입력 장치에 적용되는 옵션 도 있음 ).


감사합니다. 감사합니다. 감사합니다. 드라이브의 레이블을 읽었으며 "고급 형식"이라고 표시되어 있습니다. 나는 그것이 지금 무엇을 의미하는지 안다. 그러나 당신은 재 할당 된 섹터를보고하지 않는 드라이브에 대해 어떤 아이디어가 있습니까?
MetaNova

1
"현재 계류중인 섹터"는 반드시 불량 섹터 일 필요는 없으며, 디스크는 유휴 검사에서 디스크를 읽는 데 약간의 어려움을 겪었습니다. 아마도 오랫동안 기록하지 않았고 데이터가 희미 해지기 시작했기 때문입니다 (예 : 자기장 약화) ). 해당 섹터에 새 데이터를 쓰면 디스크에 강력하게 형성된 새 데이터로 해당 섹터의 데이터를 새로 고칩니다. 따라서 보류중인 섹터에 쓰면 디스크가 정상이라고 가정합니다. 해당 섹터에서 데이터를 다시 읽어 안정적인지 확인해야합니다.
BeowulfNode42

디스크의 데이터를 신경 쓰지 않고 정확한 섹터 목록을 찾거나 섹터 수 계산을 원하지 않는 사람들은 16MiB와 같은 4KiB의 블록 크기로 전체 디스크를 dd하십시오. 그런 다음 이전에 선택한 블록 크기보다 작은 디스크의 마지막 부분에 4KiB의 블록 크기를 사용하십시오.
BeowulfNode42

0

나는 최근에 이것을해야했고 전체 디스크에서 조각을 실행하는 것이 매우 효과적이라는 것을 알았습니다. 파쇄는 디스켓을 제외하고 의도 된 목적으로 쓸모가 없지만,자가 치유가 불량 블록에서 진행되도록하는 데 필요한 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.