%20%EB%B0%8F%20HDD%20%EC%8A%AC%EB%A1%AF.png)
원격 서버가 있습니다. 80개의 HDD가 있고 나와 통신하는 사람이 물리적으로 액세스할 수 있습니다.
HDD의 일부 오류를 디버깅하고 있지만 물리적 링크(phy)에 대한 정보만 가지고 있습니다. 즉, 제가 사용하는 소프트웨어는 다음과 같은 정보만 제공합니다.
phy 46의 phy 오류
이 phy 46이 물리적으로 어디에 있는지 알 수 있는 방법이 있나요? HDD 슬롯 같은건가요? 나는 phys가 어떻게 작동하는지에 대한 연구를 수행했으며(적어도 내가 사용하고 있는 sas 컨트롤러는 ASR 8805 Adaptec입니다) phys가 sas 커넥터 내부에 있다는 것을 알고 있지만 누군가가 더 자세히 설명할 수 있다면 좋을 것입니다. 더 간단합니다.
답변1
왜 이것이 항상 그렇게 어려운지 잘 모르겠습니다. 디스크 선택 표시등을 깜박이는 스크립트를 사용합니다. sda를 디스크 이름으로 변경합니다.
while true; do sleep 1; dd if=/dev/sda of=/dev/null bs=1M count=12 >/dev/null 2>&1; done
링크가 다운된 경우 작동하지 않을 수 있지만 옆에 있는 디스크를 깜박일 수 있습니다.
답변2
이는 실제 하드웨어 RAID 컨트롤러처럼 보이므로 OS에서 볼 수 있는 모든 디스크 장치는 /dev/sda
실제 물리적 디스크가 아닌 RAID 논리 디스크를 나타냅니다. 따라서 dd
stark가 제안한 명령은 해당 RAID 세트의 일부 또는 전체 디스크를 깜박일 것입니다.
하드웨어 RAID 컨트롤러를 사용하려면 RAID 컨트롤러의 내부 상태에 액세스할 수 있고 예를 들어 핫스왑 인클로저에 있는 특정 디스크의 표시등을 켜거나 깜박일 수 있는 컨트롤러 공급업체의 유틸리티가 필요합니다.
Adaptec ASR 8805의 경우 문제의 유틸리티는 "Storage Manager"이고 해당 명령줄 버전은 arcconf
.
이를 통해 다음과 같은 명령을 사용하여 RAID 컨트롤러의 전체 구성 목록을 얻을 수 있습니다.
# arcconf getconfig 1
(1은 동일한 서버에 유사한 컨트롤러를 여러 개 설치한 경우 구성 목록을 원하는 Adaptec RAID 컨트롤러의 번호입니다.)
커널에서 사용하는 "phy" 번호는 유틸리티에서 사용하는 장치 번호와 동일할 수도 있고 아닐 수도 있으므로 arcconf
구성 목록을 읽고 각 물리적 드라이브의 나열된 상태와 해당 채널 및 ID 번호를 확인해야 합니다. 그런 다음 다음과 같은 명령을 사용하여 특정 디스크의 표시등을 깜박일 수 있습니다.
arcconf identify 1 device <channel> <id>
이 명령은 아무 키나 눌러 깜박임을 멈출 때까지 표시등을 깜박입니다.