如何查看CentOS版本 - CentOS配置和教程
本教程的目的是展示如何检查 Linux 系统的 CentOS 版本。可以通过命令行或 GUI 来执行此操作,因此您可以使用对您来说更方便的方法。 Classic CentOS 即将结束生命,将被 CentOS Stream 取代。了解您的 CentOS 版本将使您深入了解您的系统将继续受到支持多长时间。
在本教程中您将学习:
如何通过GUI查看CentOS版本
如何通过命令行查看CentOS版本
如何检查 CentOS 版本分步说明
是时候切换到 CENTOS STREAM 了?
CentOS 7 和 CentOS 8 的生命周期终止日期将于 2024 年到来。作为 CentOS 管理员,是时候开始考虑是否要迁移了很快就会转到 CentOS Stream 或跳到新发行版。
有多种方法可以检查您的系统上运行的 CentOS 版本。检查 CentOS 版本号的最简单方法是执行 cat /etc/centos-release 命令。可能需要确定准确的 CentOS 版本才能帮助您或您的支持团队对 CentOS 系统进行故障排除。
CentOS版本由三个发行版本组成,如下图所示:
要检查其他 Linux 发行版的版本,请访问我们的如何检查 Linux 版本指南。
生命周期结束 (EOL) 日期
下表列出了 CentOS 操作系统的官方“生命周期结束”日期。
查看CentOS版本的命令是什么?
下表包含有关如何检查 CentOS Linux 服务器或桌面上的 CentOS 版本的最常见和推荐的方法。
Command | Description |
---|---|
$ rpm -q centos-linux-release $ rpm -q centos-release |
CentOS version valid for CentOS 6 and higher. Causes to reveal major, minor and asynchronous CentOS version. |
$ lsb_release -d | Requires redhat-lsb package to be installed before execution. |
$ rpm -E %{rhel} | RPM macro to reveal a major CentOS version |
$ rpm –eval %{centos_ver} | RPM macro to display a major version of CentOS |
$ cat /etc/centos-release | Linux cat command to output content of the /etc/centos-release to query CentOS version. Works with CentOS 6 and higher. |
检查 CentOS 版本的替代命令
如果上述命令无法帮助您获取 CentOS 版本号,您可以尝试以下替代命令。
尽管仅适用于 CentOS 版本 7 及更高版本,但 hostnamectl
命令可能会为您提供有关操作系统版本号的重要线索:
$ hostnamectl
Static hostname: linuxconfig
Icon name: computer-vm
Chassis: vm
Machine ID: 15e085b3b0804a88b04a63b0012f544d
Boot ID: 581516a48bb04b8c837d98163ffbcfaf
Virtualization: oracle
Operating System: CentOS Linux 8
CPE OS Name: cpe:/o:centos:centos:8
Kernel: Linux 4.18.0-305.10.2.el8_4.x86_64
Architecture: x86-64
要获得更多答案,请尝试查询 /etc
目录中的所有发布文件:
$ cat /etc/*elease
CentOS Linux release 8.4.2105
NAME="CentOS Linux"
VERSION="8"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Linux 8"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-8"
CENTOS_MANTISBT_PROJECT_VERSION="8"
CentOS Linux release 8.4.2105
您正在运行的系统可能定义了宏,可以帮助您识别 CentOS Linux 服务器的主要发行版本。请尝试以下操作:
$ rpm --eval '%{centos_ver}'
8
最后,您的 GRUB 引导菜单可能会提供一些答案。从 GRUB mane 检查 CentOS 版本并不是最可靠的方法,但它可能会为您提供一些线索:
# grep title /boot/loader/entries/*
/boot/loader/entries/15e085b3b0804a88b04a63b0012f544d-0-rescue.conf:title CentOS (0-rescue-15e085b3b0804a88b04a63b0012f544d) 8
/boot/loader/entries/15e085b3b0804a88b04a63b0012f544d-4.18.0-305.10.2.el8_4.x86_64.conf:title CentOS (4.18.0-305.10.2.el8_4.x86_64) 8
使用编程查看CentOS版本
如果您希望通过编程来自动检查 CentOS 版本,您有多种选择。本节将列出如何使用 Bash 脚本和 Python 编程语言检查 CentOS 版本的一些基本示例。
bash 脚本
如果 /etc/centos-release
文件存在并已填充,则可以使用以下 bash 脚本获取 CentOS 版本号。 以下脚本作为示例,请随意修改适当的地方。有关 Bash 脚本的更多信息,请访问我们的 bash 脚本教程:
#!/bin/bash
full=`cat /etc/centos-release | tr -dc '0-9.'`
major=$(cat /etc/centos-release | tr -dc '0-9.'|cut -d \. -f1)
minor=$(cat /etc/centos-release | tr -dc '0-9.'|cut -d \. -f2)
asynchronous=$(cat /etc/centos-release | tr -dc '0-9.'|cut -d \. -f3)
echo CentOS Version: $full
echo Major Relase: $major
echo Minor Relase: $minor
echo Asynchronous Relase: $asynchronous
输出:
$ ./check-centos-version.sh
CentOS Version: 8.4.2105
Major Relase: 8
Minor Relase: 4
Asynchronous Relase: 2105
Python编程
以下 python 脚本将输出发行版名称以及操作系统版本号。请注意,在尝试使用 python 检查 CentOS 版本之前,请确保您的系统上安装了 python3-distro 软件包:
#!/usr/bin/python3
import distro
print(distro.linux_distribution())
或者,可以直接从 shell 执行 python 代码:
$ python3 -c 'import distro; print(distro.linux_distribution())'
输出:
$ ./check-centos-version.py
('CentOS Linux', '8', 'n/a')