Mac 하드 디스크의 불량 블록 수정


24

TechTool로 스캔 한 하드 디스크가 있으며 불량 블록 하나를보고합니다. 내가 알 수있는 한, TechTool 은 오류 만 스캔 하고보고합니다. 아무것도 고치지 않습니다.

그 당시에는 Norton Disk Doctor가 Mac에서 불량 블록을 검사하고 플래그를 지정 (재 매핑)하는 작업을 수행했습니다. 현재 HFS + 디렉토리 오류 (디스크 유틸리티, fsck, DiskWarrior, TechTool)를 수정하기위한 다양한 도구가 있지만 표면 검사 수행하고 불량 블록을 수정 하는 도구를 모릅니다 .

어떤 소프트웨어를 사용할 수 있습니까?

불량 블록의 주소를 알고 있으면이를 표시하기위한 하위 수준의 터미널 유틸리티가 있습니까?


3
최신 HDD는 읽기 실패시 불량 블록을 자동으로 다시 매핑합니다. 유일한 문제는 해당 블록의 데이터가 손실되어 파일을 읽을 수 없거나 손상되었거나 FS에 오류가 발생할 수 있습니다. 시스템의 checkdisk / fsck를 사용하십시오 (Mac에는 익숙하지 않습니다). [때때로 불량 블록은 하드웨어 문제가 아니라 전력 손실의 결과입니다. 이것은 고칠 수 있지만 다른 주제입니다.]
chronos

5
@chronos 읽기가 아닌 쓰기 작업이 실패하면 불량 블록 만 자동으로 다시 매핑하는 최신 HDD가 많이 있습니다. 나는 동일한 불량 블록을 반복해서 다시 읽지 못하는 최근의 많은 하드 드라이브로 작업했지만 문제를 해결하자마자 문제가 해결되었습니다.
Spiff

2
@Spiff-당신은 정확합니다. 블록 데이터와 CRC 필드가 데이터 무결성을 보장하기 위해 어떻게 작동하는지에 대한 긴 설명을 피하려고 노력했습니다. 따라서 물리적 블록 문제인지 또는 손상된 CRC인지 확인하기 위해 쓰기 작업이 필요합니다. 수정 가능). 실제로, 나는 읽기에 remap을 수행하는 현대의 HDD를 알지 못합니다 ...
chronos

1
고려해야 할 사항이 있습니다 : NTFS 파티션에서 보류 섹터를 '고정'한 경험은 1) 정확한 데이터 섹터 식별, 2) 쓰기 및 3) 내부 NTFS 불량 섹터 카운터 재설정 (유일한 단계였습니다) 나는 bogdan.org.ua/2010/03/01/…에 문서화했다 . HFS +가 불량 블록 카운터를 유지하는지 확실하지 않은 경우 해당 섹터를 복구하려는 경우 추가 문제가 될 수 있습니다.
크로노스

답변:


9

표면 스캔을 수행하고 불량 블록을 수정하는 도구를 모릅니다.

어떤 유형의 Mac과 어떤 유형의 하드 드라이브에 문제가 있습니까?

적어도 최근 하드웨어의 경우 불량 블록을 "수정"하는 소프트웨어 도구가 있는지 의심합니다. 언제 시작했는지는 모르겠지만 어느 정도 나쁜 섹터를 다시 매핑하는 기능이 하드 드라이브의 펌웨어에 병합되었습니다.

SMARTReporter 와 같은 도구를 사용하여 드라이브 의 SMART 레지스터 를 보면 ID 번호 05와 "Reallocated Sectors Count"라는 제목의 항목이 표시됩니다. 이것은 드라이브가 재 맵핑 한 불량 섹터의 수입니다.

아마도 Disk Warrior의 "Bad Block"은 다른 것을 언급하고 있습니까? (나는 그것이 무엇인지 추측 할 수 없었다).


댓글에 답글로 업데이트 (아래) :

SMARTReporter는 다소 "유쾌한"유틸리티 인 것으로 보입니다. 실제로 드라이브의 SMART 레지스터의 내용을 쿼리하고 표시 할 수 있습니다. 예기치 않은 후프를 뛰어 넘기면됩니다.

에서 SMARTReporter 자주 묻는 질문 : 당신은이 재미있는 이야기 찾을 수 있습니다
캔 SMARTReporter 실패하는 SMART 테스트 정확히 말해을?
예, 버전 2.4.5부터 시작합니다! 환경 설정 창의 드라이브 목록에서 드라이브를 마우스 오른쪽 단추로 클릭하고 "SMART 속성 확인"을 선택하십시오.

SMARTReporter의 또 다른 단점은 메뉴 바 항목을 사용할 때 cut'n paste가 이러한 디스플레이 창에서만 작동한다는 것입니다. 바로 가기 키 및 마우스 "마우스 오른쪽 버튼 클릭"컨텍스트 창에서는 작동하지 않습니다. 반면 SMARTReporter 무료입니다. ;-)

그러나 나는 탈선한다 ...

흥미롭게도 SMART Utility는 다른 모든 유틸리티가 "확인 됨"으로 표시하면 드라이브를 "실패"로 호출합니다. 보류중인 불량 섹터 1 개가 표시됩니다. 그렇다면 "보류중인"불량 섹터를 "제거 된"또는 "재 할당 된"불량 섹터로 어떻게 변경합니까?

내 이해는 당신 이 그것을하지 않을 것입니다. 드라이브의 펌웨어는 자동으로 자체적으로 수행해야합니다. Wikipedia SMART 기사표에 나와있는 내용에 유의 하십시오 .

  • 05 재 할당 된 섹터 수 재 할당 된 섹터 수
    입니다. 하드 드라이브가 읽기 / 쓰기 / 확인 오류를 발견하면이 섹터를 "재 할당 됨"으로 표시하고 데이터를 특수 예약 영역 (예비 영역)으로 전송합니다. 이 프로세스를 리매핑이라고도하며 "재 할당 된"섹터를 리맵이라고합니다.
    이것이 현대 하드 디스크에서 표면을 테스트하는 동안 "불량 블록"을 찾을 수없는 이유입니다. 모든 불량 블록은 재 할당 된 섹터에 숨겨져 있습니다. 그러나, 재 할당 된 섹터의 수가 증가함에 따라, 판독 / 기록 속도는 감소하는 경향이있다.
    원가는 일반적으로 발견 및 재 매핑 된 불량 섹터 수를 나타냅니다. 따라서 속성 값이 높을수록 드라이브가 다시 할당해야하는 섹터가 더 많아집니다.

  • C5 현재 보류중인 섹터 수
    "불안정한"섹터 수 (읽기 오류로 인해 재 매핑 대기 중). 불안정한 섹터가 이후에 쓰거나 성공적으로 읽 히면이 값이 감소하고 섹터가 다시 매핑되지 않습니다. 섹터의 읽기 오류는 섹터를 다시 매핑하지 않습니다 (나중에 읽을 수 있으므로). 대신, 드라이브 펌웨어는 섹터를 다시 매핑해야한다는 것을 기억하고 다음에 쓸 때 다시 매핑합니다.

따라서 위의 내용이 사실 인 경우 보류중인 섹터 수 를 신중하게 해석해야합니다. 섹터 읽기 오류는 TechTool로 이전에 수행 한 디스크 스캔 중에 발생했을 가능성이 높습니다. (BTW, TechTool Deluxe 3.1.3 을 의미 합니까?) TechTool이 섹터를 쓰려고하지 않았기 때문에 (아직) 재 할당되지 않았습니다.

다시 포맷하지 않고 할 수 있습니까?

포맷 이 드라이브의 모든 섹터에 쓴 경우 "재 포맷"만으로도 무언가를 달성 할 수 있다고 생각합니다 . MAC 유틸리티에서 디스크 포맷을 사용하여 표준 (비보안) 지우기를 수행하는지 여부를 모르겠습니다 .MAC의 맥락에서 다시 포맷을 의미한다고 생각합니다 ...

이 작업을 수행하면 시간이 많이 걸리는 작업입니다. 최근에 500GB 노트북 드라이브로 이와 같은 작업을 수행했으며 완료하는 데 2 ​​1/2 시간이 걸리지 않았습니다. 물론, (희망적으로) 신뢰할 수있는 백업에서 시스템을 (희망적으로) 복원하려면 시간을 추가해야합니다.

이 문제를 "수정"하도록 적극적으로 시도해야한다는 것은 분명하지 않습니다. 다음 번 불량 섹터에 쓰려고 시도 할 때 드라이브의 펌웨어가 자체적으로이를 처리해야합니다. 또한 문제의 섹터가 현재 파일의 일부로 사용되지 않는 것 같습니다. 드라이브의 모든 섹터를 검색하는 동안 TechTool이 "충돌했습니다".

그러나 수정을 강요하려는 경우 해당 섹터에 쓰기를 강제하는 작업을 수행해야 할 것 같습니다. 노력할만한 가치가없는 것 같습니다. 파일을 계속 백업하고 드라이브 성능이 저하 될 경우를 대비하여 계속 주시하십시오.


1
이것은 iMac 내장 SATA HD 용입니다. SMARTReporter는 "확인 된"이상으로 많은 것을 말하지 않지만 SMART Utility라는 다른 도구가 모든 정보를 가지고 있습니다. 흥미롭게도 SMART Utility는 다른 모든 유틸리티가 "확인 됨"으로 표시하면 "실패"드라이브를 호출합니다. 보류중인 불량 섹터 1 개가 표시됩니다. 그렇다면 "보류중인"불량 섹터를 "제거 된"또는 "재 할당 된"불량 섹터로 어떻게 변경합니까? 다시 포맷하지 않고 할 수 있습니까? (예, 백업되었지만 시간 절약을 위해.)
Andrew Vit

1
위의 업데이트에서 내가 말한 것 외에도 개인적으로 선호하는 것은 드라이브 제조업체의 진단 프로그램입니다. 아마도 그것은 실제로 필요한 것 이상이지만, "왜 그렇지 않습니까?" 그러나 iMac 에서이 작업을 수행하는 방법은 나보다 훨씬 뛰어납니다. 일반적으로 진단 프로그램은 부팅 가능한 CD 이미지로 배포되지만 인텔 Mac에서 부팅 될 것이라고는 생각하지 않습니다. 이 문제를 해결하려면 일반적으로 드라이브를 제거하고 Windows PC에 마운트하십시오. 그러나 iMac에서 드라이브를 제거하는 것이 가장 권장하지 않는 실제 PITA 일 수 있다고 생각합니다. <sigh>
비합리적인 John

@Andrew Vit-보류중인 불량 섹터에 쓰면 문제가 해결 될 수 있습니다 (재 할당 목록에 추가하지 않고 보류 목록에서 섹터를 제거).
크로노스

3
레코드의 경우 정확히 다음과 같이 끝났습니다. 시간이 걸리는 "0 쓰기"옵션으로 다시 포맷 한 다음 백업에서 다시 복제했습니다. SMART Utility에서보고 된 "보류중인"불량 블록이 사라졌습니다. 방금 사라지고 드라이브에 불량 블록이 표시되지 않습니다 ... / shrug /
Andrew Vit

1
@Andrew Vit : 상태를 업데이트 해 주셔서 감사합니다. 나는 그 이야기가 어떻게 끝나는지를 알게되어 항상 감사합니다. 그것이 당신을 행복하게 만든다면 의심 할 여지가 없었습니다. 그러나 IMO는 "0으로 쓰기"형식을 다시 설정했습니다. 이 섹터는 아마도 적극적으로 사용되지 않았으며 아마도 사용했을 때 리 맵핑되었을 것입니다. 궁금한 점이 있으시면 SMART 값을 다시 확인하여 해당 섹터가 실제로 재 포장되었는지 확인할 수 있습니까? (재 할당 횟수가 0에서 1로 변경 되었습니까?) 또는 "손상된 CRC"인지, 크로노스가 이전 의견에서 언급했을 가능성이 있습니까?
비이성적 인 John

12

파일 시스템 무결성 검사를 실행할 때 불량 블록이 표시되면 하드 드라이브가 이미 다시 매핑 할 수있는 블록 수를 초과했을 가능성이 높고 "예비"섹터를 모두 소모 한 것입니다. 문제를 악화시키고 데이터를 잃기 전에 데이터를 즉시 백업하고 (아직 그렇지 않은 경우) 드라이브를 교체해야합니다.

신뢰할 수있는 SMART 진단이 확실하지 않은 경우 smartmontoolsGSmartControl 을 다운로드 하여 SMART 진단을 다른 검사로 확인하는 것이 좋습니다 .

SMART 진단이 재 할당 된 섹터를보고하지 않는 경우 (또는 "재 할당 된 섹터 수"의 VALUE 열이 여전히 임계 값보다 훨씬 낮은 경우) 표면 스캔을 수행하고 불량 블록을 동시에 다시 매핑하는 쉬운 방법이 있습니다. (참고 : 먼저 데이터를 백업하십시오!)

드라이브가 자체 불량 블록 리매핑을 수행하는 가장 쉬운 방법은 Ubuntu Live CD 에서 부팅 한 다음 터미널을 열고 다음 명령을 실행하는 것입니다.

sudo badblocks -nvs /dev/sda

이렇게하면 첫 번째 드라이브에서 비파괴 랜덤 읽기 / 쓰기 테스트를 수행하여 불량 섹터를 다시 매핑합니다.

하드 드라이브가 두 개 이상인 경우 / dev / sda를 / dev / sdX로 바꿀 수 있습니다. 여기서 X는 소문자입니다. 다음 명령을 입력하여 모든 하드 디스크 (/ dev / sdX 장치) 목록을 얻을 수 있습니다.

sudo fdisk -l

BSD를 기반으로하는 Mac OS X를 사용하고 있기 때문에 , 불량 블록을 처리하기위한 내장 BSD 명령 줄 유틸리티 인 badsectbad144 를 읽을 수도 있습니다 .


시간이 좀 걸릴 것입니다 :Testing with random pattern: 0.15% done, 27:02 elapsed. (0/0/0 errors)
neu242

또는 다른 시작 디스크에 유닉스 도구가 설치되어 있으면 불량 블록 이 포함 된 e2fsprogs.sourceforge.net 을 다운로드하여 빌드 할 수 있습니다 . 그런 다음 확인하려는 디스크를 마운트 해제하고 불량 블록을 실행하십시오.
user8128167

6

grc.com의 SpinRite에 대한 나의 경험은 매우 긍정적이었습니다. 다른 모든 디스크 복구 시도에 실패한 디스크를 4 개 이상 복구했습니다. 유일한 단점은 BIOS 기반 컴퓨터가 필요하다는 것입니다. 즉, 최신 EFI 기반 Mac에서는 작동하지 않습니다. 좋은 점은 플로피, CD 또는 플래시 드라이브에서 다른 poc PC를 실행하는 것입니다. 개별 섹터의 내용을 실제로 검사하고 다른 모든 유틸리티가 나쁜 블록으로 버리는 것에 대한 데이터를 복구한다는 측면에서 다른 것을 찾지 못했습니다.


6

OS X 내장 명령 fsck_hfs에는 OS X의 하드 디스크에서 불량 블록을 스캔하고 수정하는 -S 옵션이 있습니다.

설명서에서 :

-S fsck_hfs가 전체 장치를 스캔하여 I / O 오류를 찾습니다. -B 옵션과 유사하게 오류가있는 블록을 이름에 맵핑하려고 시도합니다.

예:

fsck_hfs -fy -S / dev / disk3s11

그것은 AA 디스크에 실행할 때 일을 할 것 없이 불량 블록하지만 난했습니다 아직 때 무엇을 / 문서를 확인할 수 있습니다 나쁜 블록.


나는 이것이 디스크 블록을 실제로 스페어 링하기 위해 종종 필요합니다.
Taryn

3

오래된 질문이지만 여전히 유효합니다. 나를 위해 일한 것은 다음과 같습니다.

  • 가능하면 주 파티션 이외의 파티션이나 드라이브에서 시동하십시오. 타사 응용 프로그램을 사용하여 손상된 파일을 식별하려는 경우 Mac의 복구 옵션이 아닌지 확인하십시오.
  • 불량 블록으로 인해 손상된 다이빙의 모든 파일을 식별하십시오. Carbon Copy Cloner를 사용하여 백업으로 내 드라이브의 미러를 만듭니다 (손상된 파일 목록 제공). 이 작업을 수행 할 수있는 다른 도구가있을 수 있습니다.
  • 드라이브에서 이러한 파일을 찾아 삭제 하십시오 (휴지통도 비우십시오! )
  • 디스크 유틸리티를 열고 '0'을 기록하여 빈 디스크 공간을 지우십시오. (한 번만 작성하면되므로 가장 빠른 옵션을 선택하십시오). 여유 공간이 많은 경우 특히 시간이 오래 걸릴 수 있습니다.

이것은 불량 블록을 식별하여이를 다시 사용하지 않도록 표시합니다. 앞에서 언급했듯이, 쓰려고 할 때만 오류가 나타납니다. 0을 쓰면됩니다.

  • 이러한 파일을 어딘가에 백업 한 경우 백업에서 수동으로 교체하십시오 (처음에 교체하려는 경우).

특히 오류가 많고 대체 할 파일이 많은 경우 시간이 많이 소요될 수 있습니다. 이런 경우에는 드라이브 교체를 고려하십시오.


0

GRC 에서 SpinRite에 대해 좋은 소식을 들었지만 직접 시도한 적이 없습니다.


슬프게도 SpinRite는 이미 실패한 드라이브에서 좋은 것보다 더 많은 해를 끼칠 것입니다. :(
rob

@rob는 어떤 식으로 피해를 입습니까? SpinRite는 여러 가지 접근 방식을 결합하여 탁월한 관리를 강조 합니다 .
Graham Perrin

2
@GrahamPerrin의 경우 데이터를 복구하고 알려진 결함이있는 동일한 매체에 다시 쓰려고 시도하는 것은 합리적이지 않습니다 . 그러나 SpinRite가 읽을 수없는 블록을 발견하자마자 계속하기 전에 반복적으로 시도하고 다시 시도한다는 점을 무시하십시오. 그 동안 드라이브는 전체 고 장점 ( "자연적으로"또는 SpinRite의 지속적인 재시 도로 인한 추가 마모로 인해)까지 계속 저하 될 수 있습니다. 과거에 고장난 250GB 하드 드라이브에서 SpinRite를 실행했으며 완료하지 않고 한 달 이상 실행되었습니다. 한마디로 : ddrescue 및 기타 도구를 먼저 사용해보십시오.
rob

2
@ 롭 감사합니다, 나는 그것을 몰랐다. GRC 기술 지원팀 은 현재 버전의 SpinRite에서 복구가 시도 된 디스크 이외의 디스크로의 복구가 지원되지 않음을 확인했습니다 .
Graham Perrin

spinrite를 만든 논란의 여지가 2000 년대 초반에 많은 헛소리를 들려왔다. 나는 예를 들어 존재하지 않는 '약한 비트'에 대해 쓰는 것을 기억합니다.
토마스

0

대부분의 드라이브가 쓰기에서 불량 블록을 재 할당하는 것처럼 들리므로 모든 프로세스가 불량 블록을 '수정'하는 방식입니다. 다시 포맷하려는 경우 많은 사람들이 0으로 쓰는 저수준 포맷에 대해 이야기합니다 (디스크 유틸리티가이를 수행함).

내가 찾은 Mac의 유일한 도구는 "Speed ​​Tools"입니다. 잘못된 블록을 찾으면 블록에 0을 씁니다 (파일에 있더라도 이미 나쁜 생각입니다).

http://www.intechusa.com/


저수준 포맷이나 어떤 종류의 포맷도 아닙니다. 포맷은 지우는 것을 의미하지 않으므로 드라이브를 사용할 수있는 포맷으로 드라이브를 넣는 것을 의미합니다. 로우 레벨 포맷은 트랙과 섹터를 디스크에 넣을 위치를 결정 하며 드라이브를 제조 할 때 한 번만 필요합니다.
차이 티 렉스

조금 더 읽으면 연결 한 기사에서 "낮은 수준의 형식 지정"이 모든 블록에 동일한 값을 쓰는 것을 의미한다는 것을 알 수 있습니다. en.wikipedia.org/wiki/Disk_formatting#Disk_reinitialization
aerickson

조금 더 읽으면 여전히 잘못되었음을 알 수 있습니다.
차이 티 렉스

0

@chronos 의 의견 에 먼저 주목 하십시오. 에지의 경우 수정으로 인해 데이터 복구가 불가능할 수 있습니다.


내가 Mac에서 사용한 유틸리티 중에서 다음과 같은 확실한 경고가 눈에 outstanding니다.

여기에 이미지 설명을 입력하십시오

경고

수행하려는 작업으로 인해 데이터가 손실 될 수 있습니다.

불량 블록을 절약하려면 ... 드라이브에 데이터를 씁니다. 불량 블록을 찾아서 절약하면 볼륨 또는 데이터가 손상 될 가능성이 높습니다.

제품을 구매 하기 전에 이러한 사실에 대해 배울 수 있습니다 .

(예를 참조, 데이터 손실의 위험을 주셔서 감사합니다 SpinRite 문서 로부터 링크 된 이유는 관리가? 내의 일부 대답 아래는 어떻게 OS X의 USB 하드 디스크에 불량 섹터가 있는지 확인하기 위해? )

확실한 구매 경고, 구매 전 만족도 및 기타 사항에 대한이 답변은 다음에 대한 본인의 신뢰 투표입니다.

천재 드라이브 3



-1

끔찍한, 위의 끔찍한 조언. 와우 끔찍한 조언을 의미합니다. :머리를 흔들다:

  1. 나는 실제로 잘못된 블록을 수정 (표시)하고 하루를 시작하게하는 Mac OS X 용 최신 유틸리티를 모른다. 즉, 문제의 HD에서 불량 블록을 수정하려면 Mac OS 용 Norton Utilities의 이전 버전을 찾아야합니다. 버전 7.0 또는 8.0과 같습니다.

  2. Mac 의류 (인텔 CPU를 사용하고 Unix [Mac OS X]를 실행하는 PPC 컴퓨터)에서 PC를 사용한다고 가정하고 있기 때문에 자신에게 좋은 PPC Macintosh를 찾거나 에뮬레이션으로 실행할 수 있습니다. 여전히 OS 9을 부팅 할 수있는 인텔 PC?). OS 9에서 작동하는 SATA SATA 카드 (SATA HD가 있다고 가정합니다)를 구하십시오. 그런 다음 Norton CD를 부팅하고 Disk Doctor를 실행하고 스캔 / 복구하십시오. 문제의 HD.

  3. 이것은 어렵게 들리지만 그렇지 않습니다. 지난 20 년 동안 "REAL"Mac 기술자이자 팬보이 인 저는 128k에서 Dual G5에 이르는 기계를 사용하기 때문에 하드웨어가 저를 위해 누워 있습니다. 다시 말해, 그것은 매우 쉽다.

  4. 왜 무례하게 들립니까? 왜냐하면 나는. 나는 현재 애플과 매우 교차하고 있으며 특히 1980 년대와 90 년대의 매킨토시 사용자를 위해 애플 컴퓨터를 파괴하고 맥을 유닉스 버전을 실행하는 PC로 바꾸는 데 스티브 잡스를 싫어합니다. 그와 그와 같은 생각을하는 사람들은 Mac에 더 이상 "적절하게"HD를 복구하는 데 필요한 유틸리티가 없기 때문입니다.

  5. SMART 데이터를 보라고 말하거나 SMART 데이터에 의존하는 사람은들을 수 없습니다. SMART는 매우 결함이 있습니다.

  6. 적어도 내가 기억할 수 있고 기술자가 늙었 기 때문에 HD는 거의 항상 불량 블록을 자동으로 다시 가져 왔습니다. 그러나! 그들은 그것을 엉뚱한 일을합니다. 불량한 블록이 보이면 HD가 불량 블록을 자동으로 다시 매핑하기 위해 예약 된 공간이 부족하기 때문입니다. IE에서는 더 나은 작업을 수행하는 유틸리티를 실행해야합니다.

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