IT/Unix & Linux

[AIX] chdev 명령 child device 오류 해결하기

슈다루냥 2020. 5. 22.
728x90

안녕하세요. 슈다 입니다.

 

chdev 명령으로 fcs 속성 변경을 하려는데

"Cannot perform the requested function because a child device of the specified device is not in a correct state"

라는 메세지와 함께 명령어 실행이 되지 않을 때 해결 방법을 알아보겠습니다.

 

 

해결방법은 fcs와 재귀적으로 묶여있는 하위 device 를 삭제한 뒤 명령어를 실행하는 것 입니다.

운영중인 device에 rmdev 명령을 실행할 수 있기 때문에 명령어 사용시에는 장애 발생 가능성을

충분히 검토해야 합니다.

 

 

 

 

chdev 명령 child device 오류 해결하기

 

하위 device 정보를 확인합니다.

변경하려는 fcs가 fcs0 이라고 가정했을 때

# lsdev -C |grep fcs0

fcs0  Available 01-00  4Gb FC Express Adapter ....

 

위와 같은 형식으로 출력됩니다.

붉은 색 표시한 device 정보로 하위 device를 확인합니다.

# lsdev -C |grep 01-00

 

01-00에는 fcnet0, fcs0, fscsi0 3가지 device가 있는 것을 확인하였습니다.

만약 해당 device에 디스크가 물려있는 경우 hdisk 등이 출력되어 확인 가능합니다.

 

 

참고로 pcmpath 나 powermt 등 의 명령어가 설치되어 있는 경우

fcs device가 사용중인지 확인이 가능합니다.

# pcmpath query device

# powermt display

 

 

fscsi0 device를 삭제합니다.

만약 삭제되지 않는다면 fcs를 제외한 검색된 다른 device를 먼저 삭제합니다.

# rmdev -dl fscsi0

 

 

 

fcs에 적용하려 했던 chdev 명령어를 수행합니다.

정상적으로 수행이 완료됩니다.

 

 

 

lsattr -El fcs0 명령으로 속성이 변경된 것을 확인할 수 있습니다.

 

 

 

chdev 명령을 수행하면 rmdev 명령으로 삭제했던 fscsi deivce가 Defined 상태로 생성됩니다.

 

 

 

Defined 를 Available 로 변경하기 위해 cfgmgr 명령을 수행합니다.

# cfgmgr -vl fscsi0

 

 

728x90
반응형