여러 프로젝트를 진행하다 보면, OS정보 없이 콘솔접속 정보만 던져주는 경우가 많습니다. 환경에 따라 인프라 구축이나 개발 환경 설정이 달라 질수 있기 때문에 적어도 기본정보는 확인하여 전달 하는것이 좋지 않을 까요?
그래서 리눅스에서 OS 버전 및 배포판 정보를 확인하는 모든 명령어를 정리했습니다. 서버 환경에 따라 사용 가능한 명령어가 다를 수 있으니 여러 방법을 조합해서 사용하면 좋습니다. 🚀
기본적인 OS 및 버전 확인 명령어
cat /etc/os-release
(모든 최신 리눅스 배포판에서 사용 가능)
cat /etc/os-release
출력 예시 (Ubuntu 24.04):
root@663bbb4a90826:~# cat /etc/os-release
PRETTY_NAME="Ubuntu 24.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04.1 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo
➡ PRETTY_NAME
값을 보면 전체 OS 정보를 쉽게 확인 가능
lsb_release -a
(Debian 계열 – Ubuntu, Debian)
lsb_release -a
출력 예시:
root@663bbb4a90826:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04.1 LTS
Release: 24.04
Codename: noble
➡ Ubuntu/Debian 계열에서 유용 (패키지 lsb-release
가 설치되어 있어야 함)
cat /etc/issue
(모든 리눅스 배포판)
cat /etc/issue
출력 예시:
root@663bbb4a90826:~# cat /etc/issue
Ubuntu 24.04.1 LTS \n \l
➡ SSH 접속 시 표시되는 배너 메시지 파일. OS 정보를 간략하게 제공
배포판별 특정 명령어
Ubuntu/Debian 계열
cat /etc/debian_version
출력 예시:
12.5
➡ Debian 기반의 버전 번호를 확인
RedHat/CentOS 계열
cat /etc/redhat-release
cat /etc/centos-release
cat /etc/system-release
출력 예시 (CentOS 7):
CentOS Linux release 7.9.2009 (Core)
출력 예시 (Amazon Linux 2):
Amazon Linux release 2 (Karoo)
SUSE Linux
cat /etc/SuSE-release
Alpine Linux (경량 리눅스 배포판)
cat /etc/alpine-release
➡ 컨테이너 환경에서 사용되는 경우가 많음
커널 및 시스템 정보 확인
uname -a
(커널 및 아키텍처 확인)
uname -a
출력 예시:
Linux myserver 5.15.0-84-generic #93-Ubuntu SMP Thu Oct 19 10:30:10 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
Linux myserver
→ 호스트 이름5.15.0-84-generic
→ 커널 버전x86_64
→ 아키텍처 정보
uname -r
(커널 버전만 확인)
uname -r
출력 예시:
6.8.0-45-generic
hostnamectl
(Systemd 기반 OS에서 사용 가능)
hostnamectl
출력 예시:
Static hostname: 663bbb4a90826
Icon name: computer-vm
Chassis: vm 🖴
Machine ID: 94ef67e99e1a4d21a35f27a2196cd95b
Boot ID: f5319fa6687141cab906d16eb409d0ef
Virtualization: microsoft
Operating System: Ubuntu 24.04.1 LTS
Kernel: Linux 6.8.0-45-generic
Architecture: x86-64
Hardware Vendor: Vultr
Hardware Model: VHP
➡ hostnamectl
은 Ubuntu, CentOS 7 이상에서 사용 가능
32비트/64비트 아키텍처 확인
arch
출력 예시:
x86_64
➡ x86_64
이면 64비트, i686
이면 32비트
getconf LONG_BIT
getconf LONG_BIT
출력 예시:
64
➡ 64비트인지 32비트인지 확인 가능
CPU 및 하드웨어 정보 확인
5.1 CPU 정보 확인
cat /proc/cpuinfo | grep "model name" | uniq
또는
lscpu
➡ CPU 모델, 코어 수, 아키텍처 확인 가능
메모리 정보 확인
free -h
➡ 시스템의 총 메모리(RAM) 및 사용량 확인
디스크 용량 확인
df -h
➡ 마운트된 디스크의 크기 및 사용률 확인
모든 정보 한 번에 확인하는 명령어
OS 및 시스템 전체 정보 출력
echo "OS 정보:"; cat /etc/os-release
echo "배포판 정보:"; lsb_release -a 2>/dev/null
echo "커널 정보:"; uname -a
echo "CPU 정보:"; lscpu | grep "Model name"
echo "메모리 정보:"; free -h
echo "디스크 사용량:"; df -h
➡ 한 번에 OS, 커널, CPU, RAM, 디스크 정보를 확인할 수 있음
🚀 정리
명령어 | 설명 | 대상 OS |
cat /etc/os-release | OS 이름 및 버전 확인 | 모든 최신 리눅스 |
lsb_release -a | 배포판 및 상세 버전 확인 | Ubuntu, Debian 계열 |
cat /etc/issue | 기본 OS 정보 출력 | 모든 리눅스 |
cat /etc/redhat-release | RedHat/CentOS 배포판 정보 | RedHat, CentOS |
cat /etc/debian_version | Debian 기반 버전 확인 | Debian, Ubuntu |
uname -a | 커널 및 시스템 정보 확인 | 모든 리눅스 |
hostnamectl | OS, 커널, 아키텍처 확인 | systemd 기반 OS |
arch | CPU 아키텍처 확인 모 | 모든 리눅스 |
getconf LONG_BIT | 32비트/64비트 확인 | 모든 리눅스 |
💡 실무에서는 cat /etc/os-release
와 uname -a
만으로도 대부분의 정보 확인이 가능합니다.
추가로 lsb_release -a
와 hostnamectl
을 사용하면 더 상세한 정보를 볼 수 있습니다. 😃