Найти в Дзене

Linux узнать версию

Есть несколько способов узнать версию Linux. Вот самые распространенные и полезные команды:

1. uname -a (или uname -r, uname -m, uname -o и т.д.)

  • Это наиболее полная команда. uname означает “Unix name” (имя Unix).
  • uname -a выводит всю информацию о системе, включая имя ядра, имя узла сети, версию ядра, аппаратное имя машины и операционную систему.
  • uname -r выводит только номер версии ядра.
  • uname -m выводит аппаратную архитектуру машины (например, x86_64, i686).
  • uname -o выводит имя операционной системы.
  • В этом выводе: * Linux: Имя ядра * myhost: Имя хоста * 5.15.0-76-generic: Версия ядра * #83-Ubuntu: Номер сборки ядра * SMP Thu Jun 15 19:16:55 UTC 2023: Метка времени сборки * x86_64: АрхитектураПример:uname -a
    # Вывод может выглядеть примерно так:
    # Linux myhost 5.15.0-76-generic #83-Ubuntu SMP Thu Jun 15 19:16:55 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

2. cat /proc/version

  • Эта команда читает содержимое файла /proc/version, который содержит информацию о версии ядра Linux.
  • Пример:cat /proc/version
    # Вывод может выглядеть примерно так:
    # Linux version 5.15.0-76-generic (buildd@lcy02-amd64-079) (gcc (Ubuntu 11.3.0-1ubuntu1~22.04.1) 11.3.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #83-Ubuntu SMP Thu Jun 15 19:16:55 UTC 2023

3. lsb_release -a (или lsb_release -d, lsb_release -i, lsb_release -r)

  • Эта команда специфична для дистрибутивов, поддерживающих Linux Standard Base (LSB). Она предоставляет информацию о дистрибутиве, релизе и кодовом имени. Часто полезнее для определения дистрибутива, а не версии ядра.
  • Возможно, вам потребуется сначала установить lsb_release: sudo apt install lsb-release (в Debian/Ubuntu) или sudo yum install redhat-lsb-core (в CentOS/RHEL).
  • lsb_release -a выводит всю доступную информацию.
  • lsb_release -d выводит описание.
  • lsb_release -i выводит идентификатор дистрибутора.
  • lsb_release -r выводит номер релиза.
  • Пример:lsb_release -a
    # Вывод может выглядеть примерно так:
    # No LSB modules are available.
    # Distributor ID: Ubuntu
    # Description: Ubuntu 22.04.2 LTS
    # Release: 22.04
    # Codename: jammy

4. hostnamectl

  • Эта команда (часть systemd) предоставляет информацию об имени хоста и системе. Обычно доступна в новых дистрибутивах Linux, использующих systemd.
  • Пример:hostnamectl
    # Вывод может выглядеть примерно так:
    # Static hostname: myhost
    # Icon name: computer-vm
    # Chassis: vm
    # Machine ID: a1b2c3d4e5f67890abcdef1234567890
    # Boot ID: 0123456789abcdef0123456789abcdef
    # Virtualization: vmware
    # Operating System: Ubuntu 22.04.2 LTS
    # Kernel: Linux 5.15.0-76-generic
    # Architecture: x86-64

5. cat /etc/*release (или cat /etc/os-release)

  • Многие дистрибутивы хранят информацию о релизе в файлах в каталоге /etc. Конкретные имена файлов могут отличаться.
  • cat /etc/*release пытается прочитать все файлы, заканчивающиеся на release в /etc.
  • cat /etc/os-release — более стандартизированный файл, содержащий информацию о релизе ОС.
  • Пример:cat /etc/os-release
    # Вывод может выглядеть примерно так:
    # NAME="Ubuntu"
    # VERSION="22.04.2 LTS (Jammy Jellyfish)"
    # ID=ubuntu
    # ID_LIKE=debian
    # PRETTY_NAME="Ubuntu 22.04.2 LTS"
    # VERSION_ID="22.04"
    # HOME_URL="https://www.ubuntu.com/"
    # SUPPORT_URL="https://help.ubuntu.com/"
    # BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
    # PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
    # VERSION_CODENAME=jammy
    # UBUNTU_CODENAME=jammy

Какую команду использовать?

  • Для получения наиболее полной информации о ядре используйте uname -a или cat /proc/version.
  • Чтобы идентифицировать дистрибутив (например, Ubuntu, Fedora, Debian), используйте lsb_release -a, hostnamectl или cat /etc/*release.
  • Если вам нужен только номер версии ядра, используйте uname -r.

Помните, что вывод и доступность этих команд могут незначительно отличаться в зависимости от конкретного используемого вами дистрибутива Linux.