Вступление
Как узнать, с каким дистрибутивом и с какой версией дистрибутива вы работаете?
Это жизненно важный вопрос.
Во-первых, вы можете подумать о наборе uname -a, но это не дает всей необходимой вам информации.
К счастью, есть файл, который есть почти во всех дистрибутивах, в котором хранятся эти ценные данные.
Это файл /etc/os-release.
Вы можете догадаться, как его можно просмотреть, потому что мы уже рассмотрели использование команды cat.
Bat — клон cat с подсветкой синтаксиса и интеграцией Git для Linux
Итак, вы просто делаете следующее, и у вас всегда будет то, что вы ищете.
$ cat /etc/os-release NAME="Ubuntu" VERSION="18.04.2 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 18.04.2 LTS" VERSION_ID="18.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=bionic UBUNTU_CODENAME=bionic
С другой стороны, uname предоставляет следующую системную информацию:
- -a, –all вывести всю информацию в следующем порядке, за исключением опущенных -p и -i, если неизвестно:
- -s, –kernel-name вывести имя ядра
- -n, –nodename вывести имя узла сети
- -r, –kernel-release вывести выпуск ядра
- -v, –kernel-version вывести версию ядра
- -m, –machine Вывести название оборудования машины
- -p, –processor вывести тип процессора (не переносимый)
- -i, –hardware-platform вывести аппаратную платформу (непереносную)
- –Version вывести uname информацию о версии и выйти
- -o, -operating-system (в основном выводит GNU / Linux)
Примеры использования uname
$ uname -o GNU/Linux $ uname -m x86_64 $ uname -r 4.15.0-54-generic $ uname -s Linux $ uname -a Linux cloudstack 4.15.0-54-generic #58-Ubuntu SMP Mon Jun 24 10:55:24 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Как вы можете видеть выше, дистрибутив и версию дистрибутива невозможно найти с помощью команды uname.
Использование команды lsb_release
В дистрибутивах Linux на основе Debian вы можете использовать команду lsb_release для вывода информации, относящейся к дистрибутиву.
Доступные Варианты:
-v, --version: Show the version of the LSB against which your current installation is compliant. -i, --id: Display the distributor's ID. -d, --description: Display a description of the currently installed distribution. -r, --release: Display the release number of the currently installed distribution. -c, --codename: Display the code name of the currently installed distribution. -a, --all: Display all of the above information. -s, --short: Use the short output format for any information displayed. This format omits the leading header(s). -h, --help: Show summary of options.
Смотрите примеры использования ниже.
$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)
Release: 10
Codename: buster
$ lsb_release -c
Codename: buster
$ lsb_release -d
Description: Debian GNU/Linux 10 (buster)
$ lsb_release -i
Distributor ID: Debian
Использование команды hostnamectl
Для систем Linux с Systemd init вы можете получить некоторую системную информацию из вывода команды hostnamectl, например,
root@debian10:~# hostnamectl Static hostname: debian10 Icon name: computer-vm Chassis: vm Machine ID: 2e5ced54e5274424b2165b459a18372a Boot ID: e21975d65c53409497466bfbce9cc193 Virtualization: kvm Operating System: Debian GNU/Linux 10 (buster) Kernel: Linux 4.19.0-5-amd64 Architecture: x86-64
«Операционная система, версия ядра и архитектура ЦП».
Посмотрите полный список доступных опций:
$ hostnamectl --help
hostnamectl [OPTIONS...] COMMAND ...
Query or change system hostname.
-h --help Show this help
--version Show package version
--no-ask-password Do not prompt for password
-H --host=[USER@]HOST Operate on remote host
-M --machine=CONTAINER Operate on local container
--transient Only set transient hostname
--static Only set static hostname
--pretty Only set pretty hostname
Commands:
status Show current hostname settings
set-hostname NAME Set system hostname
set-icon-name NAME Set icon name for host
set-chassis NAME Set chassis type for host
set-deployment NAME Set deployment environment for host
set-location NAME Set location for host
See the hostnamectl(1) man page for details.
Проверьте содержимое файла /etc/issue
Просмотр содержимого /etc/issue.
$ cat /etc/issue
Debian GNU/Linux 10 \n \l
Заключение
Найти дистрибутив и версию дистрибутива очень просто, как вы узнали.
Мы надеемся, что это было полезно и информативно.
1 comment
Ку ку