하드웨어 컨트롤러를 명시적으로 정의하는 방법이 있습니까?

하드웨어 컨트롤러를 명시적으로 정의하는 방법이 있습니까?

배경

서버에서 자동으로 정보를 가져오는 작업이 있습니다. 그러나 하드웨어나 소프트웨어 RAID 컨트롤러를 찾을 수 없습니다.


질문

각 공급업체마다 컨트롤러를 다르게 설명하기 때문에 표시된 블록 장치가 RAID라고 명확하게 정의하기는 어렵습니다.

이 문제를 해결하는 가장 좋은 방법은 내장된 Linux 유틸리티를 사용하는 것이라고 생각합니다.

내 가정이 틀렸다면 알려주십시오.

답변1

장치 이름을 통해 두 가지 방법으로 이 작업을 수행할 수 있습니다.이제는 표준화되어 있기 때문에dmidecode또는 lshwor 명령에서 감지

반품cat /proc/mdstat

반품lspci -knn | grep 'RAID bus controller'

또는lshw -class disk

다양한 솔루션이 있으며 물론 제조업체의 외부 도구를 사용하는 전용 솔루션도 있습니다.

답변2

공급업체 간(및 공급업체 내)에는 많은 차이가 있으므로 제가 선택한 방식은 두 가지 주요 도구를 사용하는 것입니다. RAID를 핑하는 lspci것입니다 . 따라서 먼저 해당 명령을 사용 하고 원하는 출력을 반환하지 않으면 동일한 핑으로 실행합니다. 이 접근 방식은 현재 Hewlett Packard 및 MegaRAID 컨트롤러가 장착된 20개 이상의 시스템에서 작동합니다.dmesggreplspcidmesggrep

관련 정보