데브옵스 (DevOps)

리눅스 서버 스펙 확인 명령어 총정리 (CPU, RAM, 디스크, 하이퍼스레딩까지)

gsroot 2025. 4. 9. 14:28
728x90
반응형
SMALL

 

개발자라면 한 번쯤은 리눅스 서버의 사양(CPU, 메모리, 디스크 등)을 직접 확인해야 할 상황을 마주하게 됩니다. 서버 세팅 직후, 리소스 최적화 전 점검, 혹은 장애 대응 시 정확한 하드웨어 정보 파악은 필수이죠.

이번 글에서는 리눅스 환경에서 자주 사용하는 서버 스펙 확인 명령어들을 항목별로 정리하고, 실제 출력값에 대한 해석도 함께 다뤄봤습니다. 실무에 바로 활용해보세요!


✅ CPU 정보 확인

1. lscpu

CPU 아키텍처, 코어 수, 스레드 수 등의 요약 정보를 출력합니다.

lscpu

예시 출력:

Architecture:        x86_64
CPU(s):              8
Thread(s) per core:  2
Core(s) per socket:  4
Socket(s):           1
Model name:          Intel(R) Xeon(R) CPU E5-2676 v3 @ 2.40GHz

❓ CPU(s)는 뭘 의미할까?

  • CPU(s)는 논리 CPU의 개수를 의미합니다. 즉, 운영체제가 인식하는 총 스레드 수입니다.
  • 예를 들어, 4코어 CPU에서 하이퍼스레딩이 활성화되면 각 코어당 2스레드 → 총 8 논리 CPU가 됩니다.

2. cat /proc/cpuinfo

각 코어(논리 CPU)별 상세 정보를 확인할 수 있습니다.

cat /proc/cpuinfo

출력 중 핵심 항목:

cpu cores   : 4
siblings    : 8
  • cpu cores: 하나의 소켓(물리 CPU) 내에 있는 물리 코어 수
  • siblings: 해당 소켓이 인식하는 총 논리 CPU 수

즉, siblings / cpu cores = 스레드 수이며, 2 이상이면 하이퍼스레딩이 활성화된 상태입니다.


🔍 하이퍼스레딩(Hyper-Threading)이란?

하이퍼스레딩은 물리 CPU 코어 하나가 두 개의 논리 CPU처럼 동작하도록 만들어주는 기술입니다.

✅ 핵심 개념

  • 하나의 물리 코어 → 2개의 논리 코어처럼 작동
  • 리눅스 등 운영체제는 CPU 개수가 2배로 보입니다

✅ 장점과 주의사항

장점 단점

리소스 활용률 향상 성능이 2배 향상되는 것은 아님
멀티태스킹/멀티스레드 처리 향상 일부 워크로드에선 오히려 느려질 수 있음
머신러닝, 웹 서버 등에 효과적 보안 이슈(Spectre, Meltdown 등) 존재

실제로 CPU 개수가 많다고 해서 코어가 많은 것은 아니므로 cpu cores, siblings, threads per core를 함께 봐야 정확한 이해가 가능합니다.


✅ 메모리(RAM) 정보 확인

1. free -h

시스템의 메모리 사용량을 요약해서 보여주는 대표적인 명령어입니다.

free -h

예시 출력:

              total        used        free      shared  buff/cache   available
Mem:           31Gi       4.5Gi       22Gi       1.1Gi       4.1Gi       25Gi
Swap:           2Gi        0Gi        2Gi

▶️ Mem:의 의미

항목 설명

total 전체 물리 메모리 (RAM)
used 사용 중인 메모리 (버퍼/캐시 포함)
free 아무 작업도 하지 않는 진짜 여유 공간
shared 여러 프로세스 간 공유된 메모리
buff/cache 커널이 사용 중인 버퍼/캐시
available 실제로 애플리케이션이 사용할 수 있는 메모리 (가장 중요!) ✔️

⚠️ used는 캐시 포함 값이므로, 실제 사용량 판단은 available 기준으로 해야 정확합니다.

▶️ Swap:의 의미

항목 설명

total 설정된 전체 스왑 공간
used 현재 사용 중인 스왑
free 남은 스왑 공간
  • 스왑은 디스크를 메모리처럼 사용하는 공간이며, 속도가 매우 느립니다.
  • RAM 부족 시에만 사용되며, 과도하게 사용되면 성능 저하의 원인이 됩니다.

✅ 디스크 용량 확인

1. df -h

디스크 파티션별 사용량과 남은 공간을 확인합니다.

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1        40G   15G   23G  40% /

2. lsblk

디스크와 파티션 구조를 트리 형태로 확인합니다.

lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   50G  0 disk
└─sda1   8:1    0   50G  0 part /

3. du -sh /경로

특정 디렉토리의 전체 크기를 확인할 때 사용합니다.

du -sh /var/log

✅ 전체 시스템 요약 정보

1. inxi -Fxz

시스템 전체의 CPU, RAM, 디스크, GPU 등을 보기 좋게 요약해주는 명령어입니다. 설치가 필요합니다.

sudo apt install inxi
inxi -Fxz

2. neofetch

간단한 시스템 정보를 시각적으로 출력해줍니다.

sudo apt install neofetch
neofetch

✅ 보너스: 네트워크 정보 확인

  • IP 주소 확인:
ip a
# 또는
ifconfig
  • 네트워크 속도/정보 확인:
ethtool eth0

✅ 마무리하며

리눅스 서버의 사양을 빠르게 파악하는 것은 운영 안정성 확보와 성능 튜닝의 기본입니다.
이번 글에서는 단순 명령어 나열이 아니라 각 명령어의 출력 결과가 의미하는 바까지 함께 정리해보았습니다.

실제 서버를 운영하거나 성능 문제를 분석할 때, 위 명령어들을 적극 활용해보세요.

728x90
반응형
LIST