Когда вы устанавливаете дистрибутив Linux самостоятельно, вы знаете, какой это дистрибутив и версия.
Но если вы используете SSH для входа на удаленный сервер Linux, предоставленный предприятием или клиентом, вы можете задаться вопросом, какой это дистрибутив и версия Linux.
Самый простой способ проверить версию Linux – посмотреть содержимое файла /etc/os-release:
cat /etc/os-release
Результат будет примерно таким:
NAME="Ubuntu" VERSION="20.04.1 LTS (Focal Fossa)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 20.04.1 LTS" VERSION_ID="20.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=focal UBUNTU_CODENAME=focal
Как видите, имя Linux – Ubuntu, а версия – 20.04.1.
Однако это не единственный способ узнать подробности дистрибутива Linux. В этом совете для новичков я покажу вам разные способы проверить, какой Linux у вас установлен.
Найти сведения о дистрибутиве Linux
Используйте файл /etc/os-release
Если вы знакомы со структурой каталогов Linux , вы, вероятно, уже знаете, что каталог /etc содержит основные файлы конфигурации системы.
Файл os-release в каталоге /etc хранит информацию о распределении Linux. Он дает вам название дистрибутива, версию дистрибутива, название выпуска или идентификатор.
Вы можете использовать команду cat для просмотра содержимого файла в терминале Linux :
cat /etc/os-release
Вот что он отображает для сервера Alpine Linux, работающего в инфраструктуре Linode.
andreyex:~# cat /etc/os-release NAME="Alpine Linux" ID=alpine VERSION_ID=3.12.0 PRETTY_NAME="Alpine Linux v3.12" HOME_URL="https://alpinelinux.org/" BUG_REPORT_URL="https://bugs.alpinelinux.org/"
Как видите, дистрибутив Linux называется Alpine Linux, а версия дистрибутива – 3.12.
Содержимое /etc/os-release обычно разное для разных дистрибутивов. Дистрибутивы часто используют его для предоставления дополнительной информации, например, где можно получить поддержку, сообщить об ошибках и т. д.
Например, /etc/os-release предоставляет больше строк для CentOS Linux.
NAME="CentOS Linux" VERSION="8 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="8" PLATFORM_ID="platform:el8" PRETTY_NAME="CentOS Linux 8 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:8" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-8" CENTOS_MANTISBT_PROJECT_VERSION="8" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="8"
Однако все они предоставляют имя и версию дистрибутива Linux, так что это довольно надежный способ узнать, какой Linux вы используете. По сути, это самый надежный способ.
Используйте команду hostnamectl
В наши дни большинство дистрибутивов Linux используют systemd. В такой системе вы можете использовать команду hostnamectl, чтобы получить подробную информацию о версии Linux.
hostnamectl
Для той же системы CentOS, которую вы видели выше, hostnamectl предоставляет следующие сведения:
[root@li2498-99 ~]# hostnamectl Static hostname: localhost.localdomain Transient hostname: li2498-99.members.linode.com Icon name: computer-vm Chassis: vm Machine ID: e3fe2be3e17be3e1763bf43e8337e68b Boot ID: 33d3052bbffd44b1869bbffd4b00d26c Virtualization: kvm Operating System: CentOS Linux 8 (Core) CPE OS Name: cpe:/o:centos:centos:8 Kernel: Linux 4.18.0-147.8.1.el8_1.x86_64 Architecture: x86-64
Вы можете увидеть подробную информацию о версии Linux в строке, начинающейся с «Операционная система».
Команда hostnamectl в основном используется для работы с именем хоста, но если она предоставляет другие сведения, почему бы не использовать ее?
Используйте команду lsb-release
Это не та команда, которую вы найдете во всех дистрибутивах Linux. Мы думаем, что она в основном используется в дистрибутивах на основе Debian/Ubuntu.
Вы можете использовать команду lsb_release с опцией -a, она предоставит подробную информацию о распространении:
lsb_release -a
Не обращайте внимания на то, что модули LSB не доступны. Это не какая-то ошибка.
linux@andreyex:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.1 LTS Release: 20.04 Codename: focal
Дополнительный совет: найдите версию ядра Linux
Теперь, когда вы знаете, какой дистрибутив вы используете, возможно, вы также захотите узнать о версии ядра Linux, запущенной в системе.
Вы можете получить подробную информацию о ядре, используя команду uname в любом дистрибутиве Linux.
uname -r
Вывод показывает только версию ядра Linux:
andreyex:~# uname -r 5.4.43-1-virt
Нет призов за предположение, что указанная выше система работает на ядре Linux версии 5.4.43.
Я надеюсь, что этот быстрый совет поможет вам найти подробную информацию о версии Linux. Если у вас есть вопросы или предложения, дайте мне знать в разделе комментариев.