디스크가 어떤 인클로저에 속해 있는지 확인하는 방법은 무엇입니까?

디스크가 어떤 인클로저에 속해 있는지 확인하는 방법은 무엇입니까?

lsscsi여러 개의 디스크와 엔클로저가 있다고 알려줍니다.

$ ls /sys/class/enclosure/6:0:10:0/ArrayDevice*/device/scsi/disk6:0:10:0 인클로저 아래에 있는 디스크의 모든 scsi 주소 목록을 가져오는 데 사용할 수 있습니다 .

해당 목록을 출력과 연관시켜 lsscsi각 디스크의 위치를 ​​확인할 수 있습니다.

그러나 확실히 이것을 자동화하기 위해 스크립트를 작성할 필요는 없습니다. 나를 위해 이 작업을 수행할 수 있는 도구가 udevadm있습니까 ?sg_ses

답변1

대답인가요?

[root@hard-3 ~]# ls -ldF /sys/block/sda/device/enclosure_device\:0
lrwxrwxrwx. 1 root root 0 июл 26 18:25 /sys/block/sda/device/enclosure_device:0 -> ../../../../../../port-1:0:4/end_device-1:0:4/target1:0:1/1:0:1:0/enclosure/1:0:1:0/0/
[root@hard-3 ~]# 

답변2

sg3_utils(debian의 경우 sg3-utils) 패키지를 설치할 수 있습니다. lsscsi명령은 엔클로저의 버스 ID를 식별하는 데 도움이 됩니다. 쿼리할 수 있습니다.sg_ses -p 7 /dev/bsg/<busid>

예는 다음과 같습니다.

[0:0:64:0]   disk    HGST     HUHAJLGALLLAAAAA  A384  /dev/sdbl
[0:0:65:0]   enclosu HGST     4U60G2_STOR_ENCL 0101  -

버스 ID가 있으면 다음 단계를 따르세요.

sg_ses --page=7 /dev/bsg/0:0:65:0

관련 정보