솔라리스 시스템이 디스크에 있는 모든 정보를 얻을 수 있는 방법이 있습니까?

솔라리스 시스템이 디스크에 있는 모든 정보를 얻을 수 있는 방법이 있습니까?

현재 진행 중인 프로젝트에서는 총 용량, 폼 팩터, SSD 또는 HDD, RPM, 인터페이스 유형 등 시스템에 설치된 모든 정보를 가져와야 합니다.

많이 검색했는데 이 작업을 수행하는 명령을 찾을 수 있습니다. 비교해 보면 Windows에는 내 요구 사항을 충족하는 일부 응용 프로그램이 있다는 것을 알았습니다. 그들은 어떻게 그렇게 했나요?

관심을 끌기 위해 Linux에도 비슷한 것이 있습니까?

이 두 운영체제는 주로 서버에서 사용되기 때문에 컴퓨터에서는 하드웨어 정보보다 하드웨어 정보가 더 중요한 역할을 해야 한다고 생각합니다.

답변1

diskinfoSolaris 11을 사용하는 경우 새 명령이 사용자의 요구 사항을 충족하는지 확인하는 것이 좋습니다 .

나는 Solaris 8에서 대부분의 정보를 얻기 위해 커널을 쿼리할 수 있다는 것을 알고 있습니다. sysinternals 책에 데이터를 얻기 위한 C 코드(? - 10년 전의 메모리 손실) 책도 있다고 생각해 보세요.

하드웨어에 따라 ILOM 또는 XSCF에서 이 데이터를 얻을 수 있습니다. Ops Center 사용을 고려할 수도 있습니다.

답변2

문제는 디스크가 이 정보를 공유할 의향이 있는지 여부입니다. 조사한다면SCSI 프로토콜, 이는 많은 정보를 제공하지 않습니다. 이와 관련된 세 가지 주요 명령은 다음과 같습니다.

  • 읽기 능력아마도 자명할 것입니다. 블록 수를 제공합니다.
  • 묻다공급업체 이름, 일련번호 등을 제공합니다.
  • 로그 감지아마도 가장 흥미로운 점은 현재 온도, 사용 통계 등과 같은 다양한 디스크 관련 정보 페이지를 제공한다는 것입니다. 그러나 많은 페이지가 디스크에서 지원되지 않습니다.

이 세 가지 명령은 하위 수준 명령을 사용하여 실행할 수 있습니다.sg3_utils이에 따라 sg_readcap, sg_inq및 명령을 사용하십시오 sg_logs. 이 패키지는 Linux에서 제공되며 Solaris 11.2+와 함께 제공됩니다.

그러나 실제 디스크를 제공할 수 있는 항목을 살펴보면 sg_logs그다지 많지 않다는 것을 알 수 있습니다.

root@calypso-sparc31:~# sg_logs -p 0x0 /dev/rdsk/c0t5000CCA01248AAE0d0s2
    HITACHI   H106060SDSUN600G  A2B0
Supported log pages:
    0x00        Supported log pages
    0x02        Error counters (write)
    0x03        Error counters (read)
    0x05        Error counters (verify)
    0x06        Non-medium errors
    0x0d        Temperature
    0x0e        Start-stop cycle counter
    0x0f        Application client
    0x10        Self-test results
    0x15        Background scan results (sbc-3)
    0x18        Protocol specific port
    0x1a        Power condition transition
    0x2f        Informational exceptions (SMART)
    0x30        Performance counters (Hitachi)
    0x37        Cache (Seagate), Miscellaneous (Hitachi)

또한 디스크가 RAID 컨트롤러(예: LSI) 또는 스토리지 서버 뒤에 있는 경우 아무 것도 얻을 수 없습니다.

이는 SCSI에서만 작동합니다. ATA 프로토콜 제품군은 완전히 다른 짐승입니다.

관련 정보