Команда lsb_release

Команда lsb_release позволяет использовать одноименную утилиту для получения информации об используемом дистрибутиве Linux. Помимо такой информации, как идентификатор поставщика дистрибутива, названием самого дистрибутива, его номер релиза и кодовое имя, она способна выводить информацию о соответствии дистрибутива стандарту LSB (Linux Standard Base) при условии наличия в системе дополнительного пакета. Команда доступна во всех популярных дистрибутивах Linux сразу же после установки, а дополнительный пакет для вывода информации о соответствии дистрибутива стандарту LSB обычно должен устанавливаться самим пользователем. Так, для установки этого пакета в дистрибутивах

Debian/Ubuntu/Linux Mint может использоваться следующая команда:

# apt install lsb-core

В дистрибутивах Fedora Linux/RHEL для этой же цели используется следующая команда:

# dnf install redhat-lsb-core

Базовый синтаксис команды выглядит следующим образом:

$ lsb_release [параметры]

В случае использования команды без каких-либо параметров считается, что пользователя интересует информация о соответствии дистрибутива стандарту LSB (что равносильно использованию параметра -v), причем в случае отсутствия в системе упомянутого выше пакета будет выведено сообщение «No LSB modules are available.». Наиболее часто утилита используется с параметром -a, позволяющим выводить сразу всю информацию о дистрибутиве, а именно, информацию о его соответствии стандарту LSB, идентификатор поставщика дистрибутива (Distributor ID), название дистрибутива (Description), номер релиза дистрибутива (Release) и его кодовое имя (Codename). Существуют параметры и для вывода всех упомянутых значений по отдельности: -i для вывода идентификатора поставщика дистрибутива, -d для вывода названия дистрибутива, -r для вывода номера релиза дистрибутива и -c для вывода кодового имени дистрибутива. Параметр -s предназначен для вывода информации в кратком формате (без названий параметров).

Примеры использования

Получение информации о дистрибутиве

Для получения информации о дистрибутиве достаточно использовать параметр -a:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 20.04.2 LTS
Release:        20.04
Codename:       focal

Если вы желаете получить вывод в кратком формате, вы можете дополнительно использовать параметр -s:

$ lsb_release -as
No LSB modules are available.
Ubuntu
Ubuntu 20.04.2 LTS
20.04
focal

Отдельные значения могут быть получены с помощью соответствующих параметров:

$ lsb_release -i
Distributor ID: Ubuntu
$ lsb_release -i -s
Ubuntu
$ lsb_release -d
Description: Ubuntu 20.04.2 LTS
$ lsb_release -d -s
Ubuntu 20.04.2 LTS
$ lsb_release -r
Release: 20.04
$ lsb_release -r -s
20.04
$ lsb_release -c
Codename: focal
$ lsb_release -c -s
focal

Данный вывод может быть полезен при написании сценариев, которые должны работать в нескольких дистрибутивах.

Получение информации о соответствии дистрибутива стандарту LSB

Для получения информации о соответствии дистрибутива стандарту LSB достаточно использовать команду без параметров:

$ lsb_release
No LSB modules are available.

Данный вывод говорит об отсутствии в системе необходимого пакета. Следует установить его и попробовать снова:

# apt install lsb-core

$ lsb_release
LSB Version: core-11.1.0ubuntu2-noarch:security-11.1.0ubuntu2-noarch

Теперь необходимая информация успешно выводится, правда она едва ли понадобится обычному пользователю и даже автору сценариев, работающих в нескольких дистрибутивах.