Команда uname: как получить информацию о системе в Linux
TL;DR
Коротко: команда uname показывает сведения о ядре и системе. Для самого полного вывода используйте uname -a; для отдельных полей — флаги вроде -s, -r, -m и т. д. Эта статья объясняет поля вывода, типичные варианты применения, альтернативы и проверочные сценарии.

Команда uname — первый инструмент, к которому обращаются администраторы и разработчики, когда нужно быстро узнать название ядра, архитектуру CPU, версию ядра и дополнительные сведения об операционной системе. Ниже — понятное руководство с примерами, советами и проверочным чек‑листом.
Что такое uname?
uname — это утилита в Linux и других Unix-подобных ОС, которая выводит базовую информацию о операционной системе и ядре в читаемом виде. Название uname происходит от «Unix Name», но реализация доступна и в других системах. В Windows ближайший аналог — команда ver в командной строке.
Синтаксис простой:
uname optionsГде options — флаги, задающие, какие поля нужно показать.
Если ввести uname без опций, вы получите имя ядра:
unameВывод:
LinuxДля полного вывода используйте флаг -a (All):
uname -aВывод (пример):

Разбор полей вывода
Пример строки:
Linux kali 5.10.0-kali7-amd64 #1 SMP Debian 5.10.28-1kali1 (2021-04-12) x86_64 GNU/Linux- Kernel name (имя ядра, -s): Linux.
- Hostname (имя хоста, -n): kali — системное имя машины.
- Kernel release (релиз ядра, -r): 5.10.0-kali7-amd64.
- Kernel version (версия ядра, -v): #1 SMP Debian 5.10.28-1kali1 (2021-04-12).
- Machine hardware name (архитектура, -m): x86_64.
- Operating system (операционная система, -o): GNU/Linux.
Некоторые поля (processor, hardware platform) могут не выводиться, если информация неизвестна утилите — тогда поля просто опускаются.
Вывод отдельных полей с помощью флагов
uname поддерживает флаги, соответствующие полям:
- -s — имя ядра
- -n — имя хоста
- -r — релиз ядра
- -v — версия ядра
- -m — архитектура машины
- -p — тип процессора
- -i — аппаратная платформа
- -o — операционная система
Пример: получить только название ОС:
uname -oВывод:
GNU/LinuxДля справки и информации о версии используйте:
uname --help
uname --versionВывод показывает версию утилиты (зависит от GNU coreutils).
Быстрые практические приёмы
- Узнать архитектуру системы: uname -m
- Проверить релиз ядра: uname -r
- Автоматическое логирование в скрипте:
echo "$(date -Iseconds) $(hostname) $(uname -srmo)" >> /var/log/machine-info.log- В скриптах для совместимости с разными дистрибутивами проверяйте и uname, и /etc/os-release (см. раздел альтернатив).
Важно: uname показывает информацию о ядре, а не всегда детальную информацию о дистрибутиве. Для данных о дистрибутиве используйте специальные файлы или команды (ниже).
Альтернативы и дополнительные источники информации
Иногда uname не содержит нужных сведений. Полезные альтернативы:
- hostnamectl — даёт подробную информацию о системе и может управлять именем хоста (systemd).
- lsb_release -a — информативно для дистрибутивов с LSB (информация о дистрибутиве).
- cat /etc/os-release — стандартный файл с параметрами дистрибутива.
- cat /proc/version — текст с версией ядра и компилятором.
Пример:
cat /etc/os-release
hostnamectl
lsb_release -aКогда uname не подойдёт (контрпример)
- Если нужно точное имя дистрибутива (например, Ubuntu 20.04 против Debian 11), uname может не дать этой информации — смотрите /etc/os-release или lsb_release.
- Для деталей о пакете ядра (напр., патчи дистрибутива) придётся смотреть метаданные пакета в менеджере пакетов.
- Если ОС нестандартная или сильно модифицирована, некоторые поля могут отсутствовать.
Методология: как быстро собрать диагностическую информацию
- Собрать базовые данные: uname -a; hostnamectl; cat /etc/os-release.
- Записать архитектуру: uname -m.
- Проверить модульность ядра и дату сборки: uname -v.
- Добавить в отчёт: логи dmesg или /var/log/syslog при необходимости.
Мини‑метод: uname -srmo дает краткую строку вида “Linux 5.10.0-… x86_64 GNU/Linux” — удобно для заголовка отчёта.
Ролевая чек‑лист (администратор / разработчик / пользователь)
- Системный администратор:
- uname -a, hostnamectl
- проверить совместимость ядра с модулями
- зафиксировать релиз и версию ядра
- Разработчик (скрипты/CI):
- использовать uname -m и -s для условий в скриптах
- комбинировать с /etc/os-release для дистроибутива
- Обычный пользователь:
- uname -r, uname -m для поиска подходящих пакетов
Критерии приёмки / тесты (простые сценарии)
- Тест 1: uname без опций возвращает имя ядра (например, Linux).
- Тест 2: uname -a содержит как минимум имя хоста и архитектуру.
- Тест 3: uname -m соответствует выводу arch или lscpu (архитектура совпадает).
Если любой тест не пройден, проверьте права, окружение или используемую оболочку.
Короткий справочник (1‑строчные определения)
- Ядро (kernel): центральная часть ОС, управляющая ресурсами и аппаратурой.
- Hostname: сетевое/системное имя машины.
- Релиз ядра (release): обозначение сборки ядра (версия пакета).
- Архитектура (machine hardware name): CPU‑архитектура, напр., x86_64.
- SMP: симметричная многопроцессорность (многопоточность ядра).
Заключение
Команда uname — простой и быстрый инструмент для получения сведений о ядре и архитектуре системы. Для полной картины комбинируйте uname с hostnamectl, /etc/os-release и lsb_release. В скриптах используйте отдельные флаги (-s, -r, -m) для надёжной обработки выводимых полей.
Краткий чек‑лист действий: uname -a → uname -m → cat /etc/os-release → добавить в отчёт.
Резюме: uname хорош для быстрой диагностики и логирования, но не заменяет специализированные файлы и утилиты для сведений о дистрибутиве.
Похожие материалы
Убрать раздражающие функции Facebook — руководство
Приложения по умолчанию на Android — настройка и управление
Установить REMnux в VirtualBox — руководство
Список выполненного: мотивация и шаблоны
Как сохранить веб‑страницу для офлайн‑чтения