--trim-sector-ranges의 무엇이 그렇게 위험한가요?

--trim-sector-ranges의 무엇이 그렇게 위험한가요?

Ubuntu를 설치하기 전에 다듬고 싶은 SSD가 있습니다. 웨어 레벨링이 작업할 수 있는 여유 블록을 갖도록 분할되지 않은 공간을 남겨 두라는 제안이 나에게 제안되었습니다. 그러나 이전에 드라이브에 일부 소프트웨어가 설치되어 있었기 때문에 분할되지 않은 공간을 남겨두고 다시 분할하는 것만으로는 충분하지 않다는 것을 알고 있습니다. 그리고 mkfs는 분할되지 않은 영역을 TRIM하지 않습니다.

매뉴얼 페이지를 읽다가 내가 사용해야 할 내용과 정확히 일치하는 을 hdparm발견했습니다 . --trim-sector-ranges또한 다음과 같은 경고가 있습니다.매우 위험합니다. 이 옵션을 사용하지 마세요!!두 배.

나는 본 적이있다추천대신 ATA 보안 지우기 명령을 사용하도록 제안합니다. 하지만 보안 삭제에는 다음과 같은 위험이 있다는 것도 읽었습니다.장치를 벽돌로 만드는 것.

--trim-sector-ranges장치를 벽돌로 만들 위험을 무릅쓰는 것이 더 나을 만큼 위험하게 만드는 것은 무엇입니까 ?

답변1

섹터 트리밍은 기본적으로 해당 섹터에 더 이상 유용한 데이터가 포함되어 있지 않으며 향후 쓰기 작업에 재사용할 수 있도록 가비지 수집(즉, 삭제)될 수 있음을 SSD에 알려줍니다. SSD 컨트롤러의 펌웨어 변환 계층에는 물리적 블록/페이지를 재생할 수 있는 "여유"가 더 많기 때문에 디스크가 꽉 찼을 때 쓰기 성능이 향상될 수 있습니다.

에서는 hdparm트리밍할 섹터가 LBA(논리 블록)로 제공됩니다. SSD가 파일 시스템으로 포맷된 경우 LBA를 트리밍하면 확실히 파일 시스템이 손상되어 사용할 수 없게 됩니다(사용자가 기본 파일 시스템-LBA 매핑에 대해 알지 못하기 때문). 파일 시스템으로 포맷된 SSD의 경우 트리밍은 fstrim.

지원되는 경우 "ATA secure era" 명령은 SSD의 모든 물리적 블록을 지워야 합니다. 이는 SSD의 모든 섹터를 잘라내는 것과 대략 동일할 수 있지만 아마도 더 최적화되고 안전한 방식일 것입니다.

참조된 링크는 USB-SATA 어댑터와 함께 사용할 때 "보안 지우기" 명령이 실패했음을 나타냅니다. 이는 USB-SATA 컨트롤러의 구현이 불량하거나 버그가 있거나 최신 SATA 사양을 준수하지 않는 구현으로 인해 발생할 수 있습니다.

SSD의 내용을 지우려면 SATA 보안 지우기 명령이 선호되는 방법입니다. --trim-sector-rangeshdparm의 옵션은 실험 및 벤치마크 목적을 위한 것입니다 . LBA 수준에서 SSD를 처리하는 매우 특정한 애플리케이션(일부 데이터베이스 시스템)에 대해서만 섹터를 트리밍하는 것이 hdparm합리적입니다.

마무리하려면, 마모 레벨링을 위해 분할되지 않은 일부 공간(오버 프로비저닝이라고 함)을 남겨 두는 것이 좋습니다. 단, 이 공간이 이전에 어떤 방식으로든 잘려진 경우라면("ATA 보안 삭제"도 이 목적을 위해 수행됩니다). 그렇지 않고 분할되지 않은 공간의 LBA 범위에 이전 데이터가 존재한다면 SSD 컨트롤러는 해당 데이터가 여전히 유효한 데이터라고 가정하고 관련 블록 및 페이지를 이동하여 "활성"을 유지하려고 노력합니다( 따라서 전반적인 마모가 증가합니다!)

관련 정보