본문 바로가기

OS(Operation System)/Linux

[Linux] OS, CPU, MEM 정보 확인 명령어

Linux OS 정보 확인 명령어

일반적인 커널의 정보 확인

[root@k8s-master1 ~]# uname -a
Linux k8s-master1 3.10.0-1160.25.1.el7.x86_64 #1 SMP Wed Apr 28 21:49:45 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
 

OS 버전 확인

[root@k8s-master1 ~]# cat /etc/*release*
CentOS Linux release 7.9.2009 (Core)
Derived from Red Hat Enterprise Linux 7.9 (Source)
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
BUG_REPORT_URL="https://bugs.centos.org/"
 
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
 
CentOS Linux release 7.9.2009 (Core)
CentOS Linux release 7.9.2009 (Core)
cpe:/o:centos:centos:7
 
 

CPU/Memory 정보 확인 명령어

top

개인적으로 많은 용도로 가장 빈번하게 활용하고 있다.총 메모리 사용량을 모니터링하는데 주로 사용하는데, 프로세스 당 메모리와 CPU사용량도 보여준다. 아래 설명할 free 명령어처럼 buffer와 cache 정보도 확인할 수 있다.
여기서 짚고 넘어가야 할 것은, 기본적으로 리눅스는 가장 빠른 성능을 위해 실행 중인 프로세스들이 요청하는 메모리를 제외한 메모리들 중 거의 대부분을 Disk cache로 사용한다는 점이다.
top 명령어를 실행해 보면 이를 알 수 있는데, Mem영역의 free 메모리 사이즈보다 Swap영역의 cached Mem 사이즈가 훨씬 큰 것을 볼 수 있다.명령어를 실행하면 실시간 모니터링이 되는데, 옵션 키들을 사용할 수 있다.
  • shift + m : 메모리 사용량 우선순위 정렬
  • shift + p : CPU 사용량 우선순위 정렬
  • shift + t : 실행 시간 우선순위 정렬
  • shift + b   상단 정보를 블럭 형태로 표시(htop과 유사)
  • 1 : CPU 개수별 사용량
  • space bar : Refresh
  • u : 해당 유저의 프로스세만 표시
  • k : 해당 프로세스 kill
 

free

메모리 사용량을 확인할 때 사용하는 가장 단순하고 쉬운 명령어.
커널에서 사용하는 공유메모리/버퍼 양 표시-/+ buffers/cache: 현재 cache 메모리에서 버퍼링 된 사용량
  • -m : MB단위로 데이터 표시
  • -b : byte단위로 데이터 표시
  • -k : kilo byte 단위로 데이터 표시
  • -t : 맨 마지막에 total 량 표시
  • -o : buffer/cache 표시 안함
  • -s : 지정한 초단위(Regular interval)로 refresh
  • -l : low & High 메모리 크기 통계
  • -V : free명령의 버전 표시
 

vmstat -s

 

ps

>ps -ef --sort -rss
  ex) ps -eo user,pid,ppid,rss,size,vsize,pmem,pcpu,time,comm --sort -rss | head -n 11
rss(Resident Set Size) : 물리 메모리를 실제 점유하고 있는 크기.
가장 위에 있는 프로세스가 물리 메모리를 가장 많이 점유하고 있음.

 

참고사이트