努力
加油

怎样在阿里云服务器上查看CentOS或Ubuntu系统版本?

在阿里云 ECS 实例上查看操作系统版本,其实跟你在本地虚拟机或者物理机上操作是一模一样的。核心逻辑就是读取系统内核信息和发行版标识文件。

针对 CentOS 和 Ubuntu 这两个最常见的 Linux 发行版,命令略有不同,但都很简单。下面直接给干货,分场景说明。

一、 通用方法(推荐)

无论什么 Linux 发行版,以下两个命令通常都能最快给出答案:

1. lsb_release -a

这是最标准的查看 LSB(Linux Standard Base)信息的命令。

sudo lsb_release -a

输出示例(Ubuntu):

Distributor ID: Ubuntu
Description:    Ubuntu 22.04.3 LTS
Release:        22.04
Codename:       jammy

输出示例(CentOS 7/8):

Distributor ID: CentOS
Description:    CentOS Linux release 7.9.2009 (Core)
Release:        7.9.2009
Codename:       Core

注意:如果提示 command not found,说明系统没装这个工具。

  • Ubuntu 默认自带。
  • CentOS 7/8 可能没预装,可以用 yum install redhat-lsb-core (CentOS 7) 或 dnf install redhat-lsb (CentOS 8+) 安装后重试。

2. cat /etc/os-release

这是目前更现代、更通用的方式,几乎所有基于 systemd 的 Linux 发行版都支持。

cat /etc/os-release

你会看到类似这样的内容:

NAME="Ubuntu"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 22.04.3 LTS"
VERSION_ID="22.04"

对于 CentOS/RHEL 系:

NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
PRETTY_NAME="CentOS Linux 7 (Core)"
VERSION_ID="7"

二、 针对特定系统的快速判断

如果你不想记太多命令,可以根据你的直觉选择:

✅ 如果是 Ubuntu / Debian 系:

  • 看版本:cat /etc/issue 或 cat /etc/lsb-release
  • 看内核:uname -r (比如 5.15.0-xx-generic)

✅ 如果是 CentOS / RHEL / Alibaba Cloud Linux 系:

  • 看完整版本:cat /etc/redhat-release
    • 输出如:CentOS Linux release 7.9.2009 (Core) 或 Alibaba Cloud Linux 3 (Soaring Falcon)
  • 看大版本:rpm -q centos-release (仅适用于 CentOS)
  • 看内核:uname -r

三、 为什么要在阿里云上特别关注这个?

作为云用户,查版本不仅仅是为了“知道”,更是为了兼容性和安全。

  1. EPEL 源配置不同:

    • CentOS 7 需要配 epel-release,而 CentOS 8 已转向 AppStream,命令从 yum 变成了 dnf。
    • Ubuntu 20.04 和 22.04 的软件包管理虽都是 apt,但某些第三方库(如 Docker、Nginx)的官方源路径可能因版本而异。
  2. 安全补丁策略:

    • CentOS 7 已于 2024 年 6 月结束主流支持(EOL),阿里云会提供迁移建议。
    • 阿里云自有 OS “Alibaba Cloud Linux” 是基于 CentOS 深度优化的,其兼容模式可能与原生 CentOS 有细微差别,务必确认你用的是原生 CentOS 还是阿里定制版。
  3. 内核版本与驱动:

    • 使用 uname -r 查看内核时,注意是否带有 -alinux 后缀(如 5.10.0-xxx-alinux),这代表你使用的是阿里云优化内核,能更好地配合弹性网卡、神龙架构等底层特性。

四、 避坑指南

  • ❌ 不要只看 hostnamectl:它显示的是主机名和内核信息,不一定包含详细的发行版版本号。
  • ❌ 不要依赖 cat /etc/redhat-release 来判断 Ubuntu:Ubuntu 没有这个文件,会报错。
  • ✅ 建议组合使用:先用 cat /etc/os-release 看发行版名称和版本 ID,再用 uname -r 看内核版本,两者结合才能完整了解系统状态。

总结

系统类型 最推荐命令 备用命令
Ubuntu cat /etc/os-release lsb_release -a
CentOS 7/8 cat /etc/redhat-release cat /etc/os-release
Alibaba Cloud Linux cat /etc/os-release uname -v

实际工作中,我习惯直接敲 cat /etc/os-release,一行命令搞定,信息清晰,兼容性好。