Linux/unix에서 데이터 정리(예: 대용량 저장 장치 비트 감쇠 완화)를 수행하는 방법은 무엇입니까?

Linux/unix에서 데이터 정리(예: 대용량 저장 장치 비트 감쇠 완화)를 수행하는 방법은 무엇입니까?

데이터 정리(대량 저장소에서) 소위 비트 부패를 완화하는 방법이 제시되었습니다.

기본 원칙은 하드 드라이브의 데이터가 "부패"/"부패"하여 손상될 수 있다는 것입니다. 이를 방지하기 위해 하드 드라이브 제조업체는 디스크 내부에서 기록된 각 블록에 몇 가지 추가 수정 데이터를 추가하도록 해야 합니다. 비트 손상은 데이터 및 이에 수반되는 수정/보호 데이터(일종의 ECC(오류 수정 코드))가 드라이브에 있는 데이터를 수정할 수 없을 때 발생합니다.

현재 제가 이해하고 있는 정보는 데이터(및 그에 추가된 수정 정보)가 시간이 지남에 따라 점차 손실된다는 것입니다. 즉, 기다리는 시간이 길어질수록 캐스케이드가 수정이 더 이상 불가능한 지점에 도달할 때까지(즉, 내부적으로 추가된 수정 데이터가 수정하기에 충분한 정보를 더 이상 제공하지 않음) 내부적으로 더 많은 비트 감소가 발생한다는 의미입니다.

데이터 정리는 비트 감쇠를 완화하는 데 도움이 되는 것 같습니다. 이상적으로는 드라이브의 모든 데이터를 내부적으로 읽고 추가 오류 수정 데이터로 데이터를 확인하는 것이 이상적이라고 생각합니다. 테스트하는 동안 드라이브에 문제가 발생하면 오류를 수정할 수 있습니다. 또한 아직 실제 URE를 발생시키지 않은 모든 내부 비트 회전 바이트를 더 나은 상태로 다시 설정할 수 있습니다.

그렇다면 장치에서 이러한 데이터 정리를 수행하려면 어떻게 해야 합니까?

smartctl, 아니면 hdparm?

테스트에는 , , / smartctl의 3가지 유형이 있습니다 . 나에게 실제로 이해가 되는 유일한 점은 잠재적인 수리가 이루어지기 전에 드라이브의 모든 데이터를 읽는 데 분명히 시간이 걸리기 때문입니다.conveyenceshortlongextendedlong

RAID 1에 대한 질문이 여기에 있습니다.mdadm을 사용한 비트 부패 감지 및 수정

RAID가 없고 일반 SATA 드라이브만 있는 경우 어떻게 해야 하는지 알고 싶습니다.

답변1

전체 일반 드라이브를 읽으십시오.

dd if=/dev/sd(x) of=/dev/null iflag=nocache status=progress

오류를 정확히 찾아내는 데 도움이 될 수 있습니다.

badblocks(8)with 옵션이 -n가장 가깝습니다. 먼저 드라이브를 마운트 해제하십시오.

관련 정보