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/issue, आप CentOS 5.3 का उपयोग कर रहे हैं। (यह रेड हैट कहता है क्योंकि CentOS आरएच स्रोतों पर आधारित है, और /etc/issueउपयोग में डिस्ट्रो की पहचान करने के लिए कुछ सॉफ़्टवेयर जांच करता है; इस प्रकार, यदि वे CentOS में बदल गए थे तो वे विफल हो जाएंगे)।

4.1.2-4में /proc/versionके संस्करण को संदर्भित करता है gccसी गिरी का निर्माण करने के लिए इस्तेमाल संकलक।


3
मैं सिर्फ यह जोड़ूंगा कि आप क्या पता लगाने के लिए uname -a का उपयोग कर सकते हैं, अगर यह 32 या 64 बिट संगत है।
फेडर RYKHTIK

15
CentOS 7 पर, 'cat / etc / issue' पैदावार gobbledygook: \S Kernel \r on an \m
Urhixidur

9
सही जवाब से h3rrmiller ... एक होना चाहिए cat /etc/*elease/etc/issueअक्सर एक संगठन के MOTD / अस्वीकरण द्वारा प्रतिस्थापित किया जाता है
बैटफ़ास्टैड

/etc/issueफ़ाइल से पता चलता है कि यह RHEL, नहीं CentOS है।
माइकल हैम्पटन

161

CentOS जैसे मामलों में आमतौर पर वास्तविक संस्करण में रखा जाता है /etc/*elease

cat /etc/*elease

दी गई यह फ़ाइल आमतौर पर पूरे OS के वर्जन को कर्नेल के रूप में रखती है (क्योंकि आप चुन सकते हैं कि कौन सा लोड करना है)। इस फ़ाइल में / etc / समस्या जैसी ही जानकारी होगी लेकिन RedHat के बजाय CentOS के साथ


1
बिल्ली / आदि / * रिलीज भी काम करेगी, और आप जो खोज रहे हैं, उसके एक पत्र को नहीं छोड़ रहे हैं;) क्योंकि elease का अनुमान लगाना हमेशा आसान नहीं होता है। *कुछ भी नहीं हो सकता है, सभी, एक या अधिक आइटम समय पर। धन्यवाद, मैं हमेशा रिलीज़ संस्करण प्राप्त करने का तरीका भूल गया।
erm3nda

9
"R" छोड़ने का कारण यह है क्योंकि कुछ मामलों में "R" को "रिलीज़" में कैपिटल किया गया है।
193 बजे h3rrmiller

बस कहने के लिए, ls /etc/*eleaseमेरे सिस्टम पर कर रहा है /etc/centos-release /etc/redhat-release /etc/system-release। तो मैं इस सब से अनुमान लगा रहा हूं कि रिलीज की फाइलें अंदर की ओर हैं /etc/*-release- लेकिन संभवतः कुछ पूंजीकरण के साथ।
mwfearnley

2
यह सही है। मैं कई साइटों पर /etc/issueएक Bannerविकल्प के साथ उपयोग के लिए एक MOTD या सुरक्षा अस्वीकरण के साथ अधिलेखित किया गया हैsshd_config
बैटफास्टैड

cat /etc/*os-releaseCentOS के लिए अधिक लक्षित परिणाम प्राप्त करना चाहिए और अभी भी उबंटू और अन्य पर काम करना चाहिए।
वेबहॉलिक

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]'
डेव जोहान्सन

1
+1 rpm -q centos-releaseएकमात्र तरीका है जो मैंने अभी तक पुराने CentOS5 रिलीज पर मामूली संस्करण प्राप्त करने के लिए पाया है, जहां / etc / redhat-release में केवल प्रमुख संस्करण शामिल हैं। संकेत के लिए धन्यवाद।
पॉलीटेकपैट्रिक

1
प्रमुख संस्करण प्राप्त करने के लिए:cat /etc/redhat-release | grep -oP '(?<= )[0-9]+(?=\.)'
रॉकलाईट

1
बस जिज्ञासु: क्यों "बिल्ली फ़ाइल | grep पैटर्न" के बजाय "grep पैटर्न फ़ाइल"?
बैरीक्रेटर

सही है, कि शेल इतिहास से खुदाई की और इसे ठीक करने में सक्षम था। फिक्स्ड।
लाज़प

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
यह सही है, आरपीएम का उपयोग करके, आप एक विस्तृत संस्करण प्राप्त कर सकते हैं
hd84335

6

सही तरीका है lsb_release -d


8
CentOS 7 पर: lsb_release: कमांड नहीं मिला।
डेरेकसन

yum install redhat-lsb-core ...
gena2x

7
ज़रूर, लेकिन मेरा मतलब था: मुझे यकीन नहीं है कि वर्तमान संस्करण को प्राप्त करने के लिए एक नया पैकेज स्थापित करना मूल्यवान है।
19

1
यदि आप कुछ कमांड चाहते हैं जो कई वितरणों में ऐसा करने में सक्षम है तो यह अभी भी स्थापित करने के लायक हो सकता है।
gena2x


3

यह /etcफ़ाइल के अंदर, स्थान पर पाया जा सकता है os-release। तो इसमें टाइप करें:

cat /etc/os-release

क्या इसे CentOS 5 या 6 में वापस लाया गया था? यदि नहीं, तो यह ज्यादातर उपयोगी है आगे बढ़ रहा है ....
mattdm

CentOS ने इसे CentOS 7 से शुरू करते हुए उपलब्ध कराया - मैंने बैकपोर्ट नहीं देखा है।
वेबहॉलिक

3

CentOS या RHEL का MAJOR संस्करण प्राप्त करने का सबसे सही (और संक्षिप्त) तरीका है:

rpm -E %{rhel}

आप जैसे के एक मूल्य दे देंगे 6, 7या 8(अब कि RHEL 8 बाहर है)।


2

rpm --eval '%{centos_ver}'सेंटोस के 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

मैंने इसे रिकॉर्ड करने के लिए एक जिन्न बनाया ।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.