[리눅스] 시스템 자원 모니터링 스크립트

리눅스 시스템의 자원 사용량을 모니터링하고 싶을 때, 스크립트를 사용하여 실시간으로 확인할 수 있습니다. 이번에는 CPU, 메모리, 디스크, 네트워크 사용량을 모니터링하는 스크립트를 작성하는 방법에 대해 알아보겠습니다.

CPU 사용량 모니터링

#!/bin/bash
while true
do
  echo "CPU 사용량: $(top -bn1 | grep Cpu | awk '{print $2}')"
  sleep 1
done

위의 스크립트는 1초마다 CPU 사용량을 출력하는 간단한 예제입니다. top 명령어를 이용하여 CPU 정보를 가져와서 출력합니다.

메모리 사용량 모니터링

#!/bin/bash
while true
do
  echo "메모리 사용량: $(free -m | awk 'NR==2{print $3}') MB"
  sleep 1
done

메모리 사용량을 모니터링하기 위해서는 free 명령어를 사용합니다. 위의 예제는 1초마다 메모리 사용량을 출력합니다.

디스크 사용량 모니터링

#!/bin/bash
while true
do
  echo "디스크 사용량: $(df -h | awk '$NF=="/"{printf "%s", $5}')"
  sleep 1
done

디스크 사용량은 df 명령어를 이용하여 확인할 수 있습니다. 스크립트는 1초마다 디스크 사용량을 출력합니다.

네트워크 사용량 모니터링

#!/bin/bash
while true
do
  echo "네트워크 사용량: $(ifstat | awk 'NR==3{print $7}') KB/s"
  sleep 1
done

네트워크 사용량을 모니터링하기 위해서는 ifstat 패키지를 설치하여 사용할 수 있습니다. 위의 예제는 1초마다 네트워크 송수신 데이터를 출력합니다.

이제 이러한 간단한 스크립트를 활용하여 리눅스 시스템의 자원 사용량을 효과적으로 모니터링할 수 있습니다.

참고 문헌: