Сравнения

5 надежных способов узнать версию Ubuntu

Поделиться:

最快检查 Ubuntu 版本的方法是打开终端并运行 lsb_release -a。输出中的 Description 行显示发行版本,例如 Ubuntu 24.04.1 LTS,这意味着你使用的是 Noble Numbat,即 2024 年 4 月发布的长期支持版本。

了解具体发行版本对于多个实际原因都很重要。软件包兼容性列表是针对特定 Ubuntu 版本编写的,为 Jammy 构建的 .deb 可能拒绝安装在 Noble 上。针对错误发行版本提交的错误报告会被关闭而不作处理。升级决策取决于当前版本的 LTS 状态以及其接近生命周期结束的程度。云镜像、容器基础层和 CI 运行器都需要与文档化的运行手册匹配,不匹配是审查者首先会标记的问题。下面五种方法涵盖了终端命令、系统文件、桌面设置面板和第三方工具。选择适合你访问权限和所需详细程度的方法。

lsb_release 命令

How to Check Ubuntu Version: 5 Reliable Methods

lsb_release -a 通过单个命令返回规范的 Ubuntu 发行信息。

$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04.1 LTS Release: 24.04 Codename: noble

Description 行是便于人类阅读的版本,并在适用时包含 LTS 后缀。Release 给出 YY.MM 格式的数字版本。Codename 是 Canonical 发行命名模式中的小写动物名称。如果你只需要其中一项,请使用短标志:lsb_release -d 用于描述,lsb_release -r 用于发行版本,lsb_release -c 用于代码名称。lsb-release 软件包预装在 Ubuntu 桌面版和服务器版上,因此该命令在原始系统上无需设置即可运行。在最小容器镜像上,你可能需要手动安装它:sudo apt install lsb-release,然后命令才能解析。输出到标准输出,使其在 shell 脚本中很方便:version=$(lsb_release -rs) 仅捕获发行版本号,无前导标签。

/etc/os-release 文件

How to Check Ubuntu Version: 5 Reliable Methods

每个 Ubuntu 安装都包含 /etc/os-release,这是一个任何用户都可以读取的纯文本文件。

$ cat /etc/os-release PRETTY_NAME="Ubuntu 24.04.1 LTS" NAME="Ubuntu" VERSION_ID="24.04" VERSION="24.04.1 LTS (Noble Numbat)" VERSION_CODENAME=noble ID=ubuntu ID_LIKE=debian HOME_URL="https://www.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" UBUNTU_CODENAME=noble

此文件遵循 freedesktop.org os-release 规范,大多数现代 Linux 发行版都支持该规范。key=value 布局使其可以在 shell 脚本中用一行代码解析:. /etc/os-release && echo "$VERSION_ID"。这种 source 方法是规范中推荐的模式,因为它避免了脆弱的 awk 或 cut 解析。Ubuntu 上还存在两个相关文件,值得了解。/etc/lsb-release 包含 DISTRIB_ID、DISTRIB_RELEASE 和 DISTRIB_CODENAME,格式类似,但这是 Ubuntu 特定的。/etc/issue 是登录前的横幅,可由管理员编辑,因此不是可靠的信息源。一个常见的错误是读取 /etc/debian_version,它在 Ubuntu 上存在,但报告的是系统所跟踪的上游 Debian 发行版本,而非 Ubuntu 本身版本。如有疑问,请读取 /etc/os-release

hostnamectl 命令

How to Check Ubuntu Version: 5 Reliable Methods

hostnamectl 命令属于 systemd,一块打印系统标识信息。

$ hostnamectl Static hostname: web-01 Icon name: computer-vm Chassis: vm Machine ID: 9c3b2a7e8f4d4b1bb1ab0ce2c9d1f0a3 Boot ID: 3a17e4c4a4be4f5b9b0a2f8b2c1e5d7a Virtualization: kvm Operating System: Ubuntu 24.04.1 LTS Kernel: Linux 6.8.0-45-generic Architecture: x86-64 Hardware Vendor: QEMU Hardware Model: Standard PC (Q35 + ICH9, 2009)

Operating System 行直接回答了版本问题。Kernel 和 Architecture 同时出现在同一输出中,这在你记录服务器或填写库存记录时省去了后续命令。hostnamectl 不需要 root 权限,适用于任何基于 systemd 的 Ubuntu,即从 16.04 开始的版本。对于脚本使用,hostnamectl --json=short 以 JSON 格式返回相同数据,可轻松用 jq 解析。该命令还会报告机箱类型和虚拟化供应商,有助于识别 VM 运行在哪个虚拟机管理程序下,例如 KVM、Hyper-V 或裸机。

uname 命令及其限制

How to Check Ubuntu Version: 5 Reliable Methods

uname 报告内核数据,而非 Ubuntu 发行版本。这一区别常常让许多用户迷惑。

$ uname -r 6.8.0-45-generic $ uname -a Linux web-01 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 30 10:00:00 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux

uname -r 返回内核发行字符串。uname -a 还添加主机名、构建日期、架构和内核名称。这两个输出本身都不包含 Ubuntu 版本号。混淆源于硬件启用(HWE)堆栈,它将较新的内核反向移植到较旧的 LTS 版本上。安装了 HWE 堆栈的 22.04 系统可能运行内核 6.8,这与 24.04 上搭载的内核相同。仅读取内核字符串无法确定发行版本。在 uname -a 的详细输出中有一个间接信号:构建横幅包含字符串 Ubuntu,这至少确认内核是由 Canonical 打包的。这种确认并不包括发行版本号。请将 uname 用于内核特定的调试或驱动兼容性检查,然后使用其他方法之一检查发行版本。

Ubuntu 桌面版中的设置应用

How to Check Ubuntu Version: 5 Reliable Methods

如果你使用的是 GNOME 桌面且不想打开终端,版本信息会出现在设置面板中。

点击屏幕右上角的系统菜单。

打开设置。

在 Ubuntu 24.04 及更高版本中,滚动左侧边栏到系统,然后点击关于。在 22.04 及更早版本中,关于条目直接在侧边栏中。

读取标记为 OS Name 或 OS 的行,它会显示版本字符串,例如 Ubuntu 24.04.1 LTS。

同一面板还列出了 GNOME 版本、OS 类型(64位)、硬件型号、处理器、内存和磁盘容量。对于桌面安装用户来说,这是在通过软件更新器启动升级之前确认发行版本最直接的途径。在搭载不同桌面环境的 Ubuntu 衍生版上,路径有所不同。KDE Plasma 在系统设置 > 关于本系统下显示版本,而 Xfce 使用设置 > 关于 Xfce 以及 lsb_release -a 来获取发行信息。上述终端方法适用于所有衍生版,无论桌面环境如何。

第三方工具:fastfetch 和 screenfetch

How to Check Ubuntu Version: 5 Reliable Methods

系统信息工具会打印发行数据以及 ASCII 徽标。它们在截图中很流行,并且便于快速概览。

$ sudo apt install fastfetch $ fastfetch .-/+oossssoo+/-. user@web-01 `:+ssssssssssssssssss+:` -------- -+ssssssssssssssssssyyssss+- OS: Ubuntu 24.04.1 LTS x86_64 .ossssssssssssssssssdMMMNysssso. Kernel: 6.8.0-45-generic /ssssssssssshdmmNNmmyNMMMMhssssss/ Uptime: 3 days, 4 hours +ssssssssshmydMMMMMMMNddddyssssssss+ Shell: bash 5.2.21 DE: GNOME 46.0 CPU: Intel Xeon E5-2690 v4 Memory: 4.2 GiB / 16.0 GiB

运行 fastfetch 以获得截至 2026 年维护最活跃的选项。screenfetch 功能类似,可通过 sudo apt install screenfetch 安装。原始的 neofetch 项目已于 2024 年 4 月由其维护者归档;它仍然可以从旧仓库安装,但不再接收更新,并且对较新硬件的报告可能不准确。这些工具中的任何一个都会提取系统文件所暴露的相同版本字符串,并附带一个整洁的摘要块。它们并未提供前面方法尚未提供的信息,但它们将这些信息打包以便快速视觉扫描,这就是它们出现在截图和论坛帖子中的原因。

读取输出

How to Check Ubuntu Version: 5 Reliable Methods

一旦你知道要查找什么,版本字符串遵循一致的格式。

数字采用 YY.MM 格式。24.04 于 2024 年 4 月发布。22.10 于 2022 年 10 月发布。

LTS 后缀标记长期支持版本,每两年在 4 月发布一次,并享受 5 年的标准更新。没有后缀的版本是临时版本,支持期为 9 个月。

代码名称将形容词和以相同字母开头的动物配对,按字母顺序递增。最近的代码名称顺序:Focal Fossa (20.04)、Jammy Jellyfish (22.04)、Noble Numbat (24.04)、Oracular Oriole (24.10)、Plucky Puffin (25.04)、Questing Quokka (25.10)。

尾随的点号版本,如 24.04.1,表示 LTS 点版本,它捆绑了累积更新和刷新后的内核堆栈。点版本大约每六个月发布一次,持续 LTS 的前两年。

下表将每种方法映射到其适合的情况。

Метод Для чего лучше всего
lsb_release -a Быстрая проверка в терминале, скрипты, требующие разбора полей
cat /etc/os-release Переносимо между дистрибутивами, разбор в shell-скриптах
hostnamectl Объединенная информация об ОС, ядре и архитектуре в одном выводе
uname -r Только для отладки ядра, не для идентификации дистрибутива
Settings > About Для пользователей рабочего стола без открытого терминала
fastfetch Сводка с системной информацией с первого взгляда

Для одноразового ответа в скрипте или удаленной SSH-сессии lsb_release -d возвращает одну строку и является самым легким вызовом. Для машиночитаемого вывода в разных дистрибутивах используйте source /etc/os-release и обращайтесь к нужным переменным. Для быстрой визуальной проверки на рабочем столе панель «Настройки» быстрее, чем открытие терминала.

Часто задаваемые вопросы

How to Check Ubuntu Version: 5 Reliable Methods

Как узнать, Ubuntu 22.04 или 24.04?

Выполните lsb_release -d или cat /etc/os-release и прочитайте номер версии. 22.04 — это Jammy Jellyfish, выпущенная в апреле 2022 года, со стандартной поддержкой до апреля 2027 года. 24.04 — это Noble Numbat, выпущенная в апреле 2024 года, со стандартной поддержкой до апреля 2029 года. Обе являются LTS-релизами.

Показывает ли uname версию Ubuntu?

Нет. uname возвращает информацию о ядре. uname -r выводит строку версии ядра, например 6.8.0-45-generic, а uname -a добавляет имя хоста, дату сборки и архитектуру. Версия ядра может быть одинаковой для двух разных релизов Ubuntu, если более старый релиз использует стек Hardware Enablement, поэтому она не заменяет lsb_release или /etc/os-release.

Моя Ubuntu LTS или нет?

Ищите буквы LTS в конце строки описания в lsb_release -d или в PRETTY_NAME из /etc/os-release. LTS-релизы выходят каждые два года в апреле и получают 5 лет стандартной поддержки. Промежуточные релизы выпускаются каждые шесть месяцев и получают 9 месяцев поддержки, после чего систему необходимо обновить.

Что означает число после Ubuntu, например 24.04?

Ubuntu использует схему версионирования YY.MM, основанную на дате выпуска. 24.04 означает, что релиз вышел в апреле 2024 года. 22.10 вышел в октябре 2022 года. Такая схема позволяет прочитать дату релиза прямо из номера версии без обращения к таблице.

Можно ли проверить версию Ubuntu в WSL?

Да. В терминале подсистемы Windows для Linux выполните lsb_release -a или cat /etc/os-release. Вывод отражает образ Ubuntu, установленный в WSL, а не хост Windows. Если у вас несколько дистрибутивов WSL, выполните wsl –list –verbose из PowerShell, чтобы подтвердить, в какой образ Ubuntu вы загружаетесь.