리눅스 OS를 사용하는 시스템에 문제가 발생했다면, 어떤 부분을 우선적으로 확인해야할까?
접속된 사용자와 사용중인 머신의 CPU 부하 상태 확인 가능
해당 서버가 며칠동안 시스템이 운용되고 있으며, 현재 접속된 사용자의 수, 최근 시간별 CPU의 부하율을 확인 할 수 있습니다.
옵션 알아보기
-p와 -s를 보면 됩니다.
-p : 시스템의 부팅 이후 현재까지 운영된 시간, pretty time
-s : 시스템이 부팅된 시간
부팅 이후 모든 커널 메시지가 출력되므로 tail을 이용하여 마지막 10 line을 출력합니다.
해당 메시지를 통해서 에러에 대한 단서를 찾을 수 있습니다.
dmesg | more을 통해서 전체 메시지를 확인할 수도 있습니다.
dmesg | grep -i를 통해서 특정 문자열을 검색할 수도 있습니다.
I/O 전송량-페이징-프로세스 개수
블록 디바이스 활동
인터럽트-네트워크 통계
run 큐 및 시스템 부하 평균
메모리와 스왑 공간 활용 통계
메모리 통계
CPU 이용률
특정 프로세스에 대한 CPU 이용률
inode, 파일, 기타 커널 테이블에 대한 상태
시스템 스위칭 활동(context switch)
스와핑 통계
특정 프로세스 통계
특정 프로세스의 하위 프로세스 통계
TTY 디바이스 활동
네트워크의 활동 상태를 확인하기에는 가장 적합한 명령어
IFACE: Network Interface 이름
rxpck/s: 초당 받은 패킷수
txpck/s: 초당 전송한 패킷수
rxbyt/s: 초당 받은 bytes
txbyt/s: 초당 전송한 bytes
rxcmp/s: 압축된 패킷을 초당 받은 수
txcmp/s: 압축된 패킷을 초당 전송한 수
rxmcst/s: 초당 받은 다중 패킷 수
네트워크의 활동 상태를 확인하기에는 가장 적합한 명령어입니다.
iostat은 디스크의 입출력 통계 및 처리량, 대기 열 등을 모니터링 할 수 있습니다.
옵션 설명
-c : cpu 사용량 정보를 출력
-d : 디바이스의 사용량 정보를 출력
-k : 초당 블록수 대신 초당 Kb를 사용
-m : 초당 블록수 대신 초당 Mb를 사용
-t : 각 결과 앞에 시간을 포함해서 출력
-V : 마지막에 버전 숫자를 출력
-n : NFS(리눅스 공유 파일 시스템)의 사용량을 출력
-h : -n 옵션과 동일한 결과를 보여주지만 -n 보다는 가독성이 좋게 출력.
-p [device|ALL] : 블록 디바이스와 시스템에서 사용되는 모든 파티션 정보를 출력
디바이스 이름이 지정되면 해당 디바이스에서 사용하는 통계 정보를 제공 ALL을 붙여 사용하면 시스템에 정의된 모든 블록 디바이스와 파티션 정보를 한 번도 사용되지 않은 것도 포함하여 결과를 출력
-x : 보다 확장된 통계 정보를 출력 -n과 -p 옵션을 같이 사용할 수 없습니다.