SATA 드라이브 확인

SATA 드라이브 확인

여러 형식의 보안 삭제를 지원하는 드라이브를 확인하려고 합니다. 형식은 공급업체별 ATA-8 패킷에 지정됩니다. 우리 기술자들은 프로토콜 테스터 드라이브마스터를 사용하여 "닫기" 필수 패킷을 생성한 다음 SATA 분석기의 오류 주입 기능을 사용하여 패킷을 올바른 형식으로 수정함으로써 이 문제를 매우 영리하게 해결했습니다.

이제 고객은 기능을 테스트할 수 있는 Linux 유틸리티가 필요합니다. 나는 미래의 공급업체 특정 명령을 테스트하는 데 있어 보다 직접적인 접근 방식을 확실히 선호합니다.

일반적으로 프로토콜(ATA, SATA 등)을 직접 실행하여 드라이브에서 드라이브 검증을 수행하는 데 사용할 수 있는 유틸리티가 Linux에 있는지 알고 싶습니다.

이러한 유형의 지원이 스크립팅 언어(Python 또는 Perl 등)에 내장되어 있다면 Linux에서 이러한 종류의 작업에 대한 최상의 지원을 제공할 언어에 대한 몇 가지 제안일 수도 있습니다. 이렇게 하면 최선의 경로를 찾는 데 시간이 절약될 것입니다.

감사해요,

브라이언

답변1

나는 당신이 어떤 종류의 "검증"을 생각하고 있는지 잘 모르겠습니다. 데이터 무결성과 관련된 문제를 테스트하시겠습니까, 상태를 확인하시겠습니까, 아니면 드라이브를 직접 사용하시겠습니까?

도움이 될 수 있는 즉각적인 생각: 이 패키지는 보고, 로깅 및 자체 테스트를 포함하여 드라이브의 SMART 기능을 주로 처리하는 CLI 도구가 포함된 gsmartcontrol패키지의 프런트 엔드입니다 .smartmontoolssmartctl

hdparm하드 드라이브로 직접 작업하는 것에 대해 이야기하면 이것이 가장 먼저 떠오르는 도구입니다. 일반적인 Linux 드라이버를 우회하고 드라이브에 일련의 직접 S/ATA 명령을 실행할 수 있습니다. 이러한 기능에는 드라이브 정보/ID 가져오기(장치 자체에서), 여러 섹터 수 읽기 및 설정(IDE 블록 모드), 디스크에서 직접 특정 섹터의 내용 읽기, 장치의 전원 상태 설정(예: 즉시 회전을 중지합니다) 등.

그것이 당신이 원하는 것이 아니라면 질문에서도 그 점을 명확히하십시오.

추가해야 할 것이 있나요?

다음은 이 "답변"의 품질이 다소 낮습니다.

요청이 너무 낮은 수준이기 때문에(설명 참조) 기본적으로 낮은 수준의 하드웨어 테스트를 위해 존재하는 일반적인 사용자 공간 소프트웨어를 알지 못하기 때문에 흥미로울 수 있는 몇 가지 링크를 추가했습니다. 몇 가지 검색을 수행한 결과 여기에 사용자 정의 소프트웨어를 작성해야 하는 경우 다음이 유용할 수 있음을 발견했습니다.

이 모든 리소스는 16년 된 2.6 커널을 중심으로 이루어집니다.

https://www.oreilly.com/library/view/linux-device-drivers/0596005903/ch14.html"Linux 장치 모델"

https://www.oreilly.com/library/view/linux-device-drivers/0596005903/ch16.html"

https://www.kernel.org/doc/html/latest/userspace-api/ioctl/hdio.html이전 기사에서 언급한 커널(v2.6) HDIO 기능을 요약합니다.

https://www.kernel.org/doc/html/latest/block/data-integrity.html

이 분야에 대한 개인적인 경험이나 보다 구체적인 정보(예: 실제로 하드 드라이브입니까 아니면 SDD입니까?) 없이 제가 제공할 수 있는 것은 이것이 전부입니다.

관련 정보