Как найти версию вашего Linux: полное руководство для всех дистрибутивов
Независимо от того, управляете ли вы персональной рабочей станцией, облачной средой VPS Hosting или Dedicated Server, знание точной версии Linux является одним из самых фундаментальных навыков в системном администрировании. Это напрямую влияет на совместимость программного обеспечения, управление патчами безопасности, точность устранения неполадок и возможность правильно следовать документации, специфичной для дистрибутива.
В этом подробном руководстве мы проведем вас через все надежные методы определения версии Linux — от быстрых однострочных команд терминала до графических интерфейсов рабочего стола — охватывая все основные дистрибутивы, включая Ubuntu, Debian, CentOS, Fedora, Arch Linux и другие.
Почему важно знать версию Linux
Прежде чем перейти к командам, стоит понять, почему эта информация так критична:
- Совместимость программного обеспечения: Менеджеры пакетов и установщики приложений часто требуют определенного дистрибутива и версии выпуска для правильной работы.
- Безопасность и обновления: Знание версии ОС гарантирует, что вы применяете правильные патчи безопасности и не отстали от выпусков с истекшим сроком поддержки (EOL).
- Точное устранение неполадок: Сообщения об ошибках, форматы журналов и поведение системы могут значительно отличаться между дистрибутивами и версиями.
- Эффективность поддержки: При отправке билета поддержки — будь то AlexHost или любому другому поставщику — указание версии Linux помогает техническим специалистам предоставить более быстрые и точные решения.
- Управление ядром и драйверами: Определенные драйверы оборудования, модули ядра и системные инструменты зависят от версии.
Метод 1: Использование команды lsb_release
Команда lsb_release (Linux Standard Base release) — один из наиболее широко используемых инструментов для получения информации о дистрибутиве в удобочитаемом формате. Она доступна по умолчанию на большинстве систем на основе Debian и Ubuntu.
Команда:
lsb_release -aПример вывода:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.3 LTS
Release: 22.04
Codename: jammyЭтот вывод дает вам полное имя дистрибутива, номер выпуска и кодовое имя версии — всю информацию, которая обычно требуется для установки программного обеспечения или запросов поддержки.
Что если команда не найдена?
Если ваша система возвращает command not found, установите пакет, используя менеджер пакетов вашего дистрибутива:
# Debian / Ubuntu
sudo apt install lsb-release
# CentOS / RHEL / AlmaLinux / Rocky Linux
sudo yum install redhat-lsb-core
# Fedora
sudo dnf install redhat-lsb-coreМетод 2: Чтение файла /etc/os-release
Файл /etc/os-release — это стандартизированный файл идентификации ОС, присутствующий практически на всех современных дистрибутивах Linux. Это наиболее универсально совместимый метод и работает надежно на Ubuntu, Debian, CentOS, Fedora, Arch Linux, openSUSE и других.
Команда:
cat /etc/os-releaseПример вывода (Ubuntu 22.04):
NAME="Ubuntu"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 22.04.3 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/"Пример вывода (CentOS Stream 9):
NAME="CentOS Stream"
VERSION="9"
ID="centos"
ID_LIKE="rhel fedora"
PRETTY_NAME="CentOS Stream 9"Этот файл особенно полезен в скриптах оболочки и рабочих процессах автоматизации, где вам нужно программно определить ОС перед выполнением команд, специфичных для дистрибутива.
Совет профессионала: Вы также можете прочитать более короткий файл /etc/issue для быстрого однострочного резюме версии:
cat /etc/issueМетод 3: Использование hostnamectl
Команда hostnamectl является частью набора systemd и предоставляет более широкий снимок идентификации системы, включая операционную систему, версию ядра и архитектуру оборудования. Она доступна на любой системе, работающей под управлением systemd (что охватывает подавляющее большинство современных дистрибутивов Linux).
Команда:
hostnamectlПример вывода:
Static hostname: my-server
Icon name: computer-vm
Chassis: vm
Machine ID: a1b2c3d4e5f6...
Boot ID: f6e5d4c3b2a1...
Virtualization: kvm
Operating System: Ubuntu 22.04.3 LTS
Kernel: Linux 5.15.0-78-generic
Architecture: x86-64Это особенно полезно при управлении средами VPS Hosting, так как также раскрывает используемую технологию виртуализации (например, KVM, VMware или LXC).
Метод 4: Проверка версии ядра Linux
Версия дистрибутива и версия ядра — это две отдельные части информации. Хотя версия дистрибутива говорит вам, какой вариант ОС вы используете, версия ядра критична для совместимости драйверов, системных вызовов и отладки низкого уровня.
Проверить только версию ядра:
uname -rПример вывода:
5.15.0-78-genericПроверить полную информацию о системе:
uname -aПример вывода:
Linux my-server 5.15.0-78-generic #85-Ubuntu SMP Fri Jul 7 15:25:09 UTC 2023 x86_64 x86_64 x86_64 GNU/LinuxЭта единственная команда раскрывает имя хоста, версию выпуска ядра, версию ядра, дату сборки, аппаратное обеспечение машины, тип процессора и ОС.
| Флаг | Возвращаемая информация |
|---|---|
uname -r | Только версия выпуска ядра |
uname -v | Версия ядра (временная метка сборки) |
uname -m | Архитектура аппаратного обеспечения машины |
uname -o | Имя операционной системы |
uname -a | Все вышеперечисленное в сочетании |
Метод 5: Проверка версии через графический интерфейс рабочего стола
Если вы используете Linux с полной средой рабочего стола (GNOME, KDE Plasma, XFCE и т. д.), вы можете найти версию ОС в параметрах системы без открытия терминала.
GNOME (Ubuntu, Fedora):
- Нажмите кнопку Действия или откройте Меню приложений.
- Перейдите в Параметры → О системе.
- Будут отображены имя ОС, версия и версия GNOME.
KDE Plasma:
- Откройте Запуск приложений.
- Перейдите в Параметры системы → Об этой системе.
- Найдите раздел Операционная система.
XFCE:
- Откройте Меню приложений.
- Перейдите в Система → О XFCE или проверьте Информацию о системе в менеджере параметров.
Метод 6: Проверка версии Linux на удаленном VPS или Dedicated Server
Это наиболее распространенный сценарий для системных администраторов, управляющих облачной инфраструктурой. Если вы используете удаленный сервер — например, Dedicated Server AlexHost или VPS — вам сначала потребуется подключиться через SSH.
Шаг 1: Подключитесь через SSH
ssh username@your-server-ipЗамените username на вашего фактического пользователя (например, root или пользователя с правами sudo) и your-server-ip на IP-адрес вашего сервера.
Шаг 2: Запустите предпочитаемую команду проверки версии
После подключения используйте любой из методов выше. Наиболее надежная комбинация:
lsb_release -a && uname -rИли для максимальной детализации:
cat /etc/os-release && uname -a && hostnamectlЭто дает вам полную идентификацию ОС, версию ядра и архитектуру системы в одном выводе — идеально для документации или запросов поддержки.
> Совет AlexHost: При управлении несколькими серверами рассмотрите возможность использования VPS Control Panel для централизованного управления серверами, мониторинга деталей ОС и оптимизации административных задач во всей вашей инфраструктуре.
Краткая справка: все команды с одного взгляда
| Команда | Что она показывает | Работает на |
|---|---|---|
lsb_release -a | Полное имя дистрибутива, версия, кодовое имя | Debian, Ubuntu, CentOS (с пакетом) |
cat /etc/os-release | Стандартизированная идентификация ОС | Все современные дистрибутивы |
cat /etc/issue | Краткое резюме версии ОС | Большинство дистрибутивов |
hostnamectl | ОС, ядро, архитектура, виртуализация | Дистрибутивы на основе systemd |
uname -r | Только версия ядра | Все дистрибутивы Linux |
uname -a | Полная информация о ядре и системе | Все дистрибутивы Linux |
Устранение распространенных проблем
lsb_release: command not found
Установите пакет lsb-release с помощью менеджера пакетов вашего дистрибутива (см. Метод 1 выше).
/etc/os-release возвращает минимальную информацию
Некоторые минимальные или контейнерные образы Linux удаляют ненужные файлы. В этом случае попробуйте cat /etc/issue или uname -a в качестве резервных вариантов.
hostnamectl недоступна
Эта команда требует systemd. Если ваша система использует другую систему инициализации (например, SysVinit или OpenRC), hostnamectl не будет присутствовать. Вместо этого используйте cat /etc/os-release.
SSH соединение отклонено на удаленном сервере
Убедитесь, что SSH включен и ваш брандмауэр разрешает порт 22 (
