2013-03-01 99 views
17

如何確定我正在運行的Linux版本是哪一個RedHat確定Redhat Linux版本

這是我讀過:

  • /etc/redhat-release文件中包含的版本,但任何人都可以使用這個文件篡改。
  • 人們說uname命令,但你可以在Redhat上安裝任何內核。

如果我正在運行redhat 5.1並且有人用5.2或5.x升級它,那麼什麼決定了RedHat的版本?

甚至lsb_release -a讀取/ etc/redhat-release文件。

+10

這不是一個棘手的問題。 RedHat將該版本放入'/ etc/redhat-release'中。如果人們篡改該文件,那麼您的系統管理員就是不好的,因爲實際上沒有人應該能夠更改該文件,除了root用戶。 – 2013-03-01 18:34:14

+0

爲什麼你想知道RedHat正在運行的是什麼版本?什麼決定版本取決於你想知道的原因。 (例如,如果你想知道它的版本是什麼,那麼你確實想看'/ etc/redhat-release',如果你想知道它是否在它的發佈流中運行最新的內核,那麼你*做*想要內核版本。) – 2013-03-01 18:37:26

+1

同意,我只是試圖找出無論如何..並試圖清除所有可能性。 – Satish 2013-03-01 18:37:45

回答

16

如果「任何人」有權訪問您的計算機以更改/ etc/redhat-release或安裝替代內核,那麼確定系統的紅帽版本可能會遇到更大的麻煩。

只需使用/ etc/redhat-release指出的值,或者在可移植性方面更好,使用lsb_release的輸出,因爲這正是它們的目的。

隨着「任何人」能夠對你的系統做任何事情,根本沒有其他機會。

+0

lsb_release閱讀/ etc/redhat-release文件:( – Satish 2013-03-01 18:59:00

+1

@Satish,這個答案的本質以及其他人的評論,是你*應該*信任的(或至少能夠信任)'/ etc/redhat-release'文件內容和'lsb_release'。如果你認爲這些輸出是不可信的,因爲「任何人都可以篡改該文件」,那麼你的整個系統是不可信的,因爲編輯該文件需要對系統進行根訪問(如果有人將該文件更改爲錯誤,誰說他們沒有做別的不好的事情?)。要麼你相信它是正確的,要麼你需要重新思考系統的安全性,如果你不能相信那些有root權限的人。 – ajp15243 2013-03-01 19:05:50

+0

@Satish:affarmitive,但它會讀/無論何處/ whatever_file或運行/無論何處/ whatever_program任何** LSB兼容系統,這就是我的意思是更好的「便攜性」 – mikyra 2013-03-01 19:05:51

20

試試這個命令:

rpm -qa | grep release 

比如我的機器上我得到這個

紅帽釋放工作站-6Workstation-6.4.0.4.el6.x86_64

+0

我可以安裝任何版本的'release' RPM – Satish 2014-08-07 19:04:37

4

你可以在最近的linux發行版上使用lsb_release命令。如果發出:

lsb_release -i -r 

或者

uname -r 

和地圖輸出。 2.6.9內核是RHEL4,2.6.18內核是RHEL5。如有必要,可以將完整版本映射到Red Hat的特定更新版本(即2.6.9-89是RHEL5 U4)。

1

最簡單的命令是:

lsb_release -d 
2

特技衆多Linux發行工作:在Red Hat

cat /etc/issue 

實施例6

$ cat /etc/issue 
CentOS release 6.7 (Final) 
Kernel \r on an \m 

$ 
3

注意:since July 2012,/etc/os-release應該是標準文件在哪裏查找任何操作系統的版本。

  • 它緩解誰只是想知道他們正在運行的檢查的各個版本文件的多種分發應用開發者。
  • 它提供了「漂亮」的名字(即向用戶顯示的名字)和機器可分析的版本/ OS標識符(即用於構建系統)。
  • 它是可擴展的,如果需要可以很容易地學習新的領域。

查看其man page

Example for RedHat

# cat /etc/os-release 
NAME="Red Hat Enterprise Linux Server" 
VERSION="7.0 (Maipo)" 
ID="rhel" 
ID_LIKE="fedora" 
VERSION_ID="7.0" 
PRETTY_NAME="Red Hat Enterprise Linux Server 7.0 (Maipo)" 
+0

不幸的是,這似乎不適用於rhel 6.x,即使沒有安裝最新的修補程序。該文件不適用於該版本,可能不適用於較舊版本的文件。 – ralhei 2016-04-18 14:13:08