![디스크가 어떤 인클로저에 속해 있는지 확인하는 방법은 무엇입니까?](https://rvso.com/image/111980/%EB%94%94%EC%8A%A4%ED%81%AC%EA%B0%80%20%EC%96%B4%EB%96%A4%20%EC%9D%B8%ED%81%B4%EB%A1%9C%EC%A0%80%EC%97%90%20%EC%86%8D%ED%95%B4%20%EC%9E%88%EB%8A%94%EC%A7%80%20%ED%99%95%EC%9D%B8%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
lsscsi
여러 개의 디스크와 엔클로저가 있다고 알려줍니다.
$ ls /sys/class/enclosure/6:0:10:0/ArrayDevice*/device/scsi/disk
6: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