CentOS 버전을 확인하는 방법?


125

그래픽 인터페이스에 액세스하지 않고 CentOS 서버의 버전을 어떻게 확인합니까? 몇 가지 명령을 시도했습니다.

# cat /proc/version
Linux version 2.6.18-128.el5 (mockbuild@hs20-bc1-7.build.redhat.com)
(gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)) …

# cat /etc/issue
Red Hat Enterprise Linux Server release 5.3 (Tikanga)

그러나 어느 것이 맞 습니까? 4.1.2-4에서 /proc/version또는 5.3에서 /etc/issue?

답변:


43

에서 볼 수 있듯이 /etc/issueCentOS 5.3을 사용하고 있습니다. CentOS는 RH 소스를 기반으로하기 때문에 Red Hat에 따르면 일부 소프트웨어는 /etc/issue사용중인 배포판을 확인 하기 때문에 CentOS로 변경하면 실패합니다.

4.1.2-4에서는 /proc/version의 버전을 의미 gcc커널을 빌드하는 데 사용되는 C 컴파일러.


3
32 비트 또는 64 비트와 호환되는 경우 uname -a를 사용하여 감지 할 수있는 항목을 추가하겠습니다.
Fedir RYKHTIK

15
CentOS 7에서 'cat / etc / issue'는 \S Kernel \r on an \m
gobbledygook을

9
정답은 h3rrmiller ...에 의한 것이어야한다 cat /etc/*elease. /etc/issue종종 조직의 MOTD / 면책 조항으로 대체됩니다
batfastad

/etc/issue파일은 RHEL,하지에 CentOS는 것을 보여준다.
Michael Hampton

161

CentOS와 같은 경우 실제 버전은 일반적으로에 배치됩니다 /etc/*elease.

cat /etc/*elease

이 파일은 일반적으로 커널을 뺀 전체 OS의 버전을 보유합니다 (로드 할 항목을 선택할 수 있기 때문에). 이 파일은 / etc / issue와 동일한 정보를 갖지만 RedHat 대신 CentOS를 사용합니다.


1
cat / etc / * release도 작동합니다. elease가 항상 추측하기 쉽지 않기 때문에 찾고있는 문자를 생략하지 않습니다.) *한 번에 하나 이상의 항목이 될 수 없습니다. 감사합니다. 항상 릴리스 버전을 얻는 방법을 잊었습니다.
erm3nda

9
"R"을 해제 한 이유는 "릴리스"의 "R"이 대문자로 표시되기 때문입니다.
h3rrmiller 2016 년

말하자면, ls /etc/*elease내 시스템 에서 일하는 것은 /etc/centos-release /etc/redhat-release /etc/system-release. 그래서 나는이 모든 것으로부터 릴리스 파일이 경향이 /etc/*-release있지만 아마도 약간 대문자로 추측하고 있습니다 .
mwfearnley

2
맞습니다. 많은 사이트 /etc/issue에서 MOTD 또는 보안 면책 조항으로 덮어 Bannersshd_config
쓰여져

cat /etc/*os-releaseCentOS에 대해 더 많은 목표 결과를 산출하고 우분투 및 기타에서 여전히 작동합니다.
webaholik

19

가장 신뢰할 수있는 방법 찾는 주요 CentOS는 (5, 6 등)의 버전은 다음과 같습니다

# rpm -q --queryformat '%{VERSION}' centos-release
6

RHEL의 경우 다음을 수행하십시오.

# rpm -q --queryformat '%{RELEASE}' redhat-release-server | awk -F. '{print $1}'
7

lsb_release 또는 다른 도구가 없는 버전을 찾는 유일한 이식 방법 은 다음과 같습니다.

# grep -oE '[0-9]+\.[0-9]+' /etc/redhat-release
6.5

3
다음과 같이 단순화 할 수 있습니다.cat /etc/redhat-release | grep -o '[0-9]\.[0-9]'
Dave Johansen

1
+1 rpm -q centos-release은 / etc / redhat-release에 주 버전 만 포함 된 이전 CentOS5 릴리스에서 마이너 버전을 얻는 유일한 방법입니다. 힌트 주셔서 감사합니다.
PolyTekPatrick

1
주요 버전을 얻으려면 :cat /etc/redhat-release | grep -oP '(?<= )[0-9]+(?=\.)'
Rockallite

1
궁금한 점은 왜 "grep pattern file"대신 "cat file | grep pattern"입니까?
barrycarter

맞습니다. 쉘 히스토리에서 파고 들어서 고칠 수있었습니다. 결정된.
lzap

13

다음 명령을 호출하여 확인할 수 있습니다.

hostnamectl

다음과 같이 반환됩니다.

Static hostname: mgbcctli01
     Icon name: computer-vm
       Chassis: vm
    Machine ID: de14d80a0900427894dbcf6137e058e7
       Boot ID: 6865f9839c064bc9be32281d0f262cc8
Virtualization: vmware
Operating System: CentOS Linux 7 (Core)
   CPE OS Name: cpe:/o:centos:centos:7
        Kernel: Linux 3.10.0-514.2.2.el7.x86_64
  Architecture: x86-64

rpmCentOS 버전에 대한 세부 정보를 찾는 데 사용할 수도 있습니다 .

rpm --query centos-release

내 경우에는 반환됩니다.

centos-release-7-3.1611.el7.centos.x86_64

1
hostnamectl주요 릴리스 번호 만 반환
fpmurphy

1
맞습니다. rpm을 사용하면 자세한 버전을 얻을 수 있습니다
hd84335

6

올바른 방법은 lsb_release -d입니다.


8
CentOS 7에서 : lsb_release : 명령을 찾을 수 없습니다.
Dereckson

yum 설치 redhat-lsb-core ...
gena2x

7
물론, 나는 의미 : 나는 현재 버전을 얻기 위해 새로운 패키지를 설치해야한다는 것이 확실하지 않다.
Dereckson

1
여러 배포판에서 수행 할 수있는 명령을 원한다면 여전히 설치 가치가 있습니다.
gena2x

5
# echo "I am running: `cat /etc/redhat-release` (`arch`)"

다음을 출력합니다.

I am running: CentOS release 6.7 (Final) (x86_64)

3

/etc파일 내부 위치에서 찾을 수 있습니다 os-release. 입력하십시오 :

cat /etc/os-release

이것이 CentOS 5 또는 6으로 백 포트 되었습니까? 그렇지 않다면, 이것은 대부분 앞으로 유용합니다 ....
mattdm

CentOS는 CentOS 7부터이 기능을 제공했습니다. 백 포트는 보지 못했습니다.
webaholik

3

가장 진정으로 신뢰할 수있는 (짧은) 방법에 CentOS 또는 RHEL은 하나의 주요 버전을 얻을 수 있습니다 :

rpm -E %{rhel}

당신에게 예를 들어 값을 줄 것이다 6, 7또는 8(현재 RHEL 8 아웃이다).


2

rpm --eval '%{centos_ver}'centos의 MAJOR 버전을 얻으려면 실행하십시오 .


0

다음은 Google을 통해 수집 한 명령이며 누군가를 도울 수 있습니다.

https://forum.directadmin.com/showthread.php?t=15878

cat /etc/*release*
cat /etc/centos-release

http://www.liquidweb.com/kb/how-to-check-your-centos-version/

cat /etc/redhat-release

https://linuxconfig.org/how-to-check-centos-version

# the later two may need some package to install
rpm --query centos-release
hostnamectl
lsb_release -d

이것을 기록하기 위해 요점 을 만들었 습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.