공식 Linux 커널에서 잘 지원되는 SAS 컨트롤러를 찾는 방법은 무엇입니까? 컨트롤러는 PCIe 버스를 사용해야 하며 LTO-6 테이프 드라이브 1개를 연결해야 합니다.
커널 모듈을 살펴봤지만 매장에서 커널 모듈과 일치하는 제품을 찾기가 어렵고 장치가 모듈과 얼마나 잘 작동하는지 이해하기 어렵습니다.
현재 상태 등을 비교하는 사이트에 관심이 있습니다.
답변1
"공식 Linux 커널 지원"과 같은 것은 없습니다. Linux 커널은 Red Hat, Intel, 심지어 Microsoft를 포함한 많은 공급업체의 패치를 수용합니다(하하!). 결국 drivers/scsi
디렉토리는 이러한 드라이버로 채워집니다.
지원되는 PCI ID와 데이터베이스의 이름을 상호 참조해 볼 수 있습니다. 지원되는 ID 얻기 modinfo
:
find /lib/modules/$(uname -r)/kernel/drivers/scsi/ -name \*.ko -type f |
xargs /usr/sbin/modinfo | grep 'alias:[ ]*pci'
별칭( v
공급업체 ID, d
장치 ID, 존재하는 경우 하위 공급업체/하위 장치) sv
을 구문 분석하는 것보다:sd
alias: pci:v00001028d00000001sv00001028sd00000001bc*sc*i*
체크인 /usr/share/pci.ids
(hwdata 제공)
나는 이 스크립트를 사용하여 이를 수행했습니다.scsi support.py
보시다시피 이 접근 방식은 데이터 집약적이지만(제출 활동 분석 등을 시도해 볼 수도 있음) 저는 더 간단한 접근 방식을 선호합니다. 사용자 경험에 대해 물어보세요. 나는 LSI에 투표한다.
답변2
제가 사용한 유일한 SAS 컨트롤러는 LSI 컨트롤러입니다. 저는 이 제품의 품질과 성능은 물론 풍부한 진단 정보도 마음에 듭니다. Linux 커널의 다른 모든 SAS 드라이버를 검토했지만 LSI가 제공하는 것과 비슷한 기능을 제공하는 드라이버는 없습니다.
모든 진단 정보가 문서화되어 있는 것은 아니며 그 중 일부는 완전히 숨겨져 있지만 최소한 LSI 지원 센터에 전화하면 문제에 대해 더 자세히 알려줄 수 있습니다.
예를 들어 IO 오류에 대한 더 자세한 정보를 제공하는 log_info 코드가 있습니다. 그 중 일부는 디코딩 가능합니다(저는 생활을 더 쉽게 만들기 위해 이를 위한 도구를 작성했습니다). 모든 코드가 공개적으로 문서화되어 있지 않으므로 일부 코드 지원을 요청해야 합니다. LSI 출신. SAS 카드에서 무슨 일이 일어났는지 알아내는 추적 가능한 mptevents와 카드가 잠겼을 때 무슨 일이 일어났는지 알려주는 오류 코드도 있습니다. 카드는 LSI 지원을 통해 기록하고 분석할 수 있는 디버그 로그를 생성할 수도 있습니다.
아무도 이것에 가까이 오지 않습니다.
SAS HBA에 대한 나의 경험은 대규모 엔터프라이즈 스토리지 시스템의 HDD 및 SSD에 관한 것입니다. 저는 소프트웨어 전문가이지만 하드웨어 문제를 이해하는 일을 담당하는 경우가 많습니다. 위의 모든 진단은 주제를 배우는 데 시간을 투자한 후에 대부분의 문제를 쉽게 해결할 수 있는 유일한 이유입니다.