Когда мы говорим о Linux, то обычно подразумеваем какой-либо дистрибутив Linux. Также под Linux мы можем иметь ввиду ядро Linux.
Иногда требуется определить версию Linux, в которой вы работаете. Пользователь может не знать или забыть, какая версия дистрибутива или какая версия ядра Linux используется. Если это чужая система, то может потребоваться узнать название используемого дистрибутива.
В данной статье рассматриваются различные способы, которые помогут нам определить используемую версию Linux. Рассматривается несколько команд для определения версии Linux. Приведенные команды универсальны и не зависят от дистрибутива. Возможно, некоторые из них могут не работать в каких-то дистрибутивах, в таком случае переходите к следующей команде и пробуйте ее.
Команда lsb_release
Команда lsb_release выводит информацию о дистрибутиве.
Префикс lsb в названии команды относится к проекту Linux Standard Base, который был создан с целью создания ряда стандартов для выпуска дистрибутивов Linux, чтобы уменьшить различия между отдельными дистрибутивами. Предполагается, что использование LSB снижает затраты, связанные с переносом приложений на разные дистрибутивы, а также снижает усилия, связанные с поддержкой этих приложений.
Чтобы отобразить информацию о дистрибутиве выполните команду:
lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.10
Release: 18.10
Codename: cosmic
Выводится название дистрибутива, номер версии и кодовое имя.
Можно использовать опцию -d, чтобы показать только строку Description, которая обычно содержит и название и версию дистрибутива.
lsb_release -d
Description: Ubuntu 18.10
Команда hostnamectl
Команда hostnamectl, выполненная без параметров или с ключом status, выводит текущую информацию о системе.
hostnamectl
Static hostname: p
Icon name: computer-desktop
Chassis: desktop
Machine ID: abc231434aabcb...a
Boot ID: 51dcaa2321bbbb...a
Operating System: Ubuntu 18.10
Kernel: Linux 4.18.0-16-generic
Architecture: x86-64
Помимо данных дистрибутива, выводится версия ядра и архитектура.
Команда uname — версия ядра
Команда uname выводит информацию о текущем ядре системы Linux, а также некоторые дополнительные данные.
Чтобы вывести всю информацию, используется ключ -a
uname -a
Linux p 4.18.0-16-generic #17-Ubuntu SMP Fri Feb 8 00:06:57 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Для удобства можно выводить только название ядра (-s), версию ядра (-r) и архитектуру (-m)
uname -srm
Linux 4.18.0-16-generic x86_64
Файл /etc/os-release
В файле /etc/os-release содержится информация о дистрибутиве, включая URL-адреса сайт системы и некоторые дополнительные данные. Данный файл присутствует в дистрибутивах, использующих systemd.
Чтобы вывести содержимое файла /etc/os-release можно воспользоваться командой cat:
cat /etc/os-release
NAME="Ubuntu"
VERSION="18.10 (Cosmic Cuttlefish)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.10"
VERSION_ID="18.10"
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=cosmic
UBUNTU_CODENAME=cosmic
Файл /etc/issue
Файл /etc/issue содержит текст, который выводится в качестве приглашения ко входу в систему. Обычно текст представляет собой название дистрибутива и версию.
Выведем содержимое файла /etc/issue командой cat:
cat /etc/issue
Ubuntu 18.10 \n \l
Файлы /etc/***release и /etc/***version
Если вы используете старый или какой-то специфический дистрибутив Linux, то информация о системе может хранится в файле /etc/abc-release или /etc/abc-version.
Вместо abc обычно указывается краткий идентификатор дистрибутива или lsb, если система совместима со стандартами LSB. Вместо символа — может быть символ _. Например, для дистрибутива Fedora используется файл /etc/fedora-release
Необязательно знать названия этих файлов. Можно воспользоваться следующей командой, чтобы автоматически определить названия и вывести содержимое этих файлов:
echo /etc/*_ver* /etc/*-rel*; cat /etc/*_ver* /etc/*-rel*
/etc/debian_version /etc/lsb-release /etc/os-release
buster/sid
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.10
DISTRIB_CODENAME=cosmic
DISTRIB_DESCRIPTION="Ubuntu 18.10"
NAME="Ubuntu"
VERSION="18.10 (Cosmic Cuttlefish)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.10"
VERSION_ID="18.10"
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=cosmic
UBUNTU_CODENAME=cosmic
Файл /proc/version
Информацию о ядре Linux также можно получить из файла /proc/version
cat /proc/version
Linux version 4.18.0-16-generic (buildd@lcy01-amd64-022) (gcc version 8.2.0 (Ubuntu 8.2.0-7ubuntu1)) #17-Ubuntu SMP Fri Feb 8 00:06:57 UTC 2019
Через графические утилиты
Многие дистрибутивы позволяют просмотреть некоторую информацию о системе, используя графические утилиты. Например, в Ubuntu это можно сделать из утилиты Параметров системы, на вкладке Сведения о системе.
Заключение
Мы рассмотрели различные способы получения информации о дистрибутиве и ядре системы Linux. Какие-то способы могут не работать в некоторых дистрибутивах Linux.
Комментарии
06:39
для справки, программа может быть не установлена, тогда:
sudo apt install screenfetch
06:54
Правда иногда его нужно установить, ну ещё скинфетч есть.
12:08
https://pingvinus.ru/gallery/1845
12:16
21:54
Тут акурат наоборот чем в "вам шашечки нужны или ехать", ну и вместе их использовать как бы не запрещает никто...