- Стандартные команды и команды, дающие информацию по системе
- Как определить версию Linux?
- Дополнительные способы определения
- Системы управления пакетами в Linux
- Проверка версии CentOS/RHEL
- Проверка версии Debian, Mint и Ubuntu
- Проверка версии Arch
- Проверка системных параметров
- Проверка системной архитектуры и версии ядра
- Проверка архитектуры ЦПУ
- Как узнать версию Linux
- Скользящие или фиксированные релизы
- Как узнать версию Linux?
- Узнать дистрибутив
- Узнать версию ядра
- Как узнать архитектуру компьютера
- Выводы
Стандартные команды и команды, дающие информацию по системе
*hostname — Вывести или изменить сетевое имя машины.
*whoami — Ввести имя под которым я зарегистрирован.
*date — Вывести или изменить дату и время. Например, чтобы установить дату и время равную 2000-12-31 23:57, следует выполнить команду: date 123123572000
*time — Получить информацию о времени, нужного для выполнения процесса + еще кое-какую информацию.Не путайте эту команду с date.
*who — Определить кто из пользователей работает на машине.
*rwho -a — Определение всех пользователей, подключившихся к вашей сети. Для выполнения этой команды требуется, чтобы был запущен процесс rwho. Если такого нет — запустите «setup» под суперпользователем.
*finger [имя_пользователя] — Системная информация о зарегистрированном пользователе. Попробуйте: finger root
*uptime — Количество времени прошедшего с последней перезагрузки.
*ps a — Список текущих процессов.
*top — Интерактивный список текущих процессов отсортированных по использованию cpu.
*htop — практически то же что и top, но в псевдо графическом виде(требует установки соответствующего пакета)
*uname — Вывести системную информацию.
*free — Вывести информацию по памяти.
*df -h (=место на диске) — Вывести информацию о свободном и используемом месте на дисках (в читабельном виде).
*du / -bh | more (=кто сколько занял) — Вывод детальной информации о размере файлов по директориям начиная с корневой (в читабельном виде).
*cat /proc/cpuinfo — Системная информация о процессоре. Заметьте, что файла в /proc директории — не настоящие файлы.
*cat /proc/interrupts — Используемые прерывания.
*cat /proc/version — Версия ядра Linux и другая информация
*cat /proc/filesystems — Вывести используемые в данный момент типы файловых систем.
*cat /etc/printcap — Вывести настройки принтера.
*lsmod (как root) — Вывести информацию о загруженных в данный момент модулях ядра.
*set|more — Вывести текущие значения переменных окружения.
*echo $PATH — Вывести значение переменной окружения «PATH»
*dmidecode — Узнать о точном названии и версии BIOS, возможностях BIOS и другой интересной информации.
*fdisk -l /dev/hda — Сведения о ёмкости и геометрии винчестера запскаем через sudo.
*sudo hdparm -I /dev/hda — Запросить информацию о винчестере и его возможностях.
*hddtemp /dev/hda — Текущая температура винчестера.
*smartctl -a /dev/hda — Возможный выход винчестера из строя помогает засечь эта команда, с помощью которой так же можно протестировать жёсткий диск.
*cat /proc/cpuinfo — Узнать подробности о процессоре. В результате получим весьма подробную информацию о процессоре.
Файловая система /proc является «слепком» состояния системы и её переменных, там хранится множество полезных сведений о системе.
В каталоге /proc, хранятся и обновляются сведения о скоростях вращения вентиляторов, заряде батарей и прочем (если это поддерживается для вашего оборудования ядром).
Вот, к примеру, как можно узнать состояние батарей ноутбука: cat /proc/acpi/battery/BAT0/info
*dmesg — Команда предоставляет доступ к логам ядра — того, что происходило при загрузке и того, что происходит в процессе работы.
Лог dmesg как правило очень длинный и изобилует подробностями работы с оборудованием. Читать его полностью довольно утомительно, поэтому стоит воспользоваться потоковой утилитой поиска grep.
Например, чтобы узнать подробности только о процессоре, нужно написать: dmesg | grep CPU
Так можно многое узнать о работе своего железа. Эта информация может пригодиться при устранении проблем (последние строки dmesg содержат информацию о том, что происходило недавно с системой). Именно поэтому на многих форумах требуют выкладывать логи системы — это и есть исчерпывающая информация о работе вашей системы и её оборудовании.
Лог dmesg и многие другие логи хранятся в /var/log/ хотя часть из них доступна только привилегированному пользователю — воспользуйтесь sudo.
*lshw — Расширенная информация о конфигурации железа. Эта утилита по умолчанию, как правило, не устанавливается, но в репозиториях она должна быть (устанавливаем при помощи aptitude install lshw). Утилита lshw выводит структурированный список оборудования вместе с информацией об устройствах. Очень полезна для анализа оборудования.
Как определить версию Linux?
Линукс — как много в этом слове эмоциональной и смысловой нагрузки. А как много разных дистрибутивов входят в это семейство И частенько требуется понять, какая конкретно версия установлена и этому помогает пакет systemd, который в настоящее время имплементирован во многие дистрибутивы.
Самый простой способ проверить версию Linux это просто использовать hostnamectl команду без каких-либо аргументов. Эта команда возвращает название дистрибутива, версию и кодовое название вместе с конкретной версией ядра.
Довольно распространенной ошибкой является называть все семейство GNU/Linux систем просто Linux-ом. Важный момент в том, что Linux — это только ядро, а GNU — непосредственно сама система в виде набора скомпилированных библиотек и системных инструментов. GNU и Linux должны работать в тандеме для того, чтобы операционная система корректно работала. Так как одно не может существовать без другого, корректнее называть эту связку GNU/Linux или Lignux.
Дополнительные способы определения
Системы управления пакетами в Linux
Если команда выше вам не помогла, следующим шагом будет проверка установленного пакетного менеджера, так как вероятность, что один из трех пакетных менеджеров все-таки установлен крайне высока.
- rpm — пакетный менеджер для систем RedHat
- dpkg — пакетный менеджер для систем Debian
- pacman — пакетный менеджер для систем Arch
Таким образом, если система использует rpm, то скорее всего у вас используется RHEL, CentOS, Fedora и т.д. Если deb, то скорее всего это Ubuntu, Debian, Mint. И соответственно в случае pacman это будет Arch или Manjaro (и им подобные).Для определения пакетного менеджера нужно ввести команду
$ for i in $( echo rpm dpkg pacman ); do which $i; done 2 /dev/null
В случае deb и rpm она вернет следующее: /usr/bin/dpkg и /bin/rpm соответственно.
Проверка версии CentOS/RHEL
Самый простой способ проверки версии CentOS это чтение файла /etc/centos-release с помощью команды cat /etc/centos-release
В свою очередь для RHEL нужно будет прочитать файл /etc/redhat-release
Команду соответственно меняем:
Думаю логика здесь понятна, для Fedora нужно будет поменять команду на fedora-release — проще некуда.
Проверка версии Debian, Mint и Ubuntu
Для Debian — подобных систем нужно прочесть файл /etc/issue:
Проверка версии Arch
Проверять версию Arch не имеет смысла, так как каждый раз при запуске команды pacman -Suy ваша система автоматически обновляется до последней версии.
Проверка системных параметров
Проверка системной архитектуры и версии ядра
Самый простой и популярный способ определения системной архитектуры и версии ядра Linux это использование команды uname с аргументом -a.
То есть команда будет выглядеть следующим образом:
В выводе будет указана версия ядра и разрядность архитектуры.
Проверка архитектуры ЦПУ
Самым простым и распространенным способом является команда:
Как видно из вывода, вместе с моделью процессора и его частотой также видна его разрядность и еще много различных параметров.
Как узнать версию Linux
Когда вы сами устанавливали систему и все настраивали, то точно знаете какой дистрибутив у вас установлен, какая версия и какая версия ядра. Но совсем другая ситуация, когда вы покупаете VPS или пытаетесь настроить компьютер другу или знакомому с Linux. Довольно часто может возникнуть вопрос как узнать версию Linux потому что эта информация часто очень важна. Например, уязвимости в программном обеспечении часто затрагивают только определенные релизы.
В этой небольшой статье мы поговорим о том как посмотреть версию Linux через терминал и какие утилиты для этого используются и в каких конфигурационных файлах можно найти интересующую нас информацию.
Скользящие или фиксированные релизы
Все активные дистрибутивы Linux выпускают новые релизы, только все по-разному. Конечно, дистрибутивы обновляются и между релизами, но пользователям привычен такой порядок, что обновления релиза получают только исправления безопасности и ошибок, а все новые возможности выпускаются новым релизом. Но существуют и другие пути. Сейчас есть два способа выпуска релизов:
Эти способы работают немного по-разному и вам нужно понимать это прежде чем мы перейдем к версии Linux. Скользящие релизы не имеют точек выпуска нового релиза, новые возможности, исправления и улучшения постоянно добавляются в официальный репозиторий и их получают пользователи. Такой подход используется в ArchLinux, Gentoo и OpenSUSE Thumbleweed. Поэтому у таких дистрибутивов нет версий, они всегда имеют самую новую версию после того, как было выполнено обновление пакетов. Но у них есть минус — это более низкая стабильность по сравнению с фиксированными релизами, которые можно хорошо протестировать.
Фиксированные релизы используются в Ubuntu. Каждые 6 месяцев выходит новый релиз, поэтому тут есть четкое разделение на версии, новая версия дистрибутива Linux получает новое программное обеспечение, а затем на протяжении всего термина поддержки получает обновления безопасности.
Как узнать версию Linux?
На самом деле для этого есть очень много методов, начиная от общих признаков и до открыть файл и точно посмотреть версию и имя дистрибутива. Рассмотрим только самые популярные из них.
Узнать дистрибутив
Прежде всего давайте узнаем имя дистрибутива и его версию если это возможно. Для этого будем смотреть содержимое файлов в папке /etc/, которые заканчиваются на release:
В Ubuntu утилита выведет содержимое двух файлов /etc/lsb-release и /etc/os-release. В них будет содержаться исчерпывающая информация о имени дистрибутива и версии его релиза:
Но если мы выполним ту же команду в ArchLinux то получим совсем другой результат:
Тут уже нет версии, есть только имя дистрибутива, поскольку ArchLinux использует систему скользящих релизов. Немного меньше, но почти всю ту же информацию можно получить используя команду lsb_release:
Также очень часто вы можете узнать имя дистрибутива посмотрев пункт «О программе» для любого системного приложения или лучше утилиты «Настройки»:
И еще один способ увидеть версию дистрибутива в основанных на Debian системах — посмотреть информацию о сборке пакета:
Узнать версию ядра
Во многих случаях нам нужна не столько версия дистрибутива linux, сколько версия ядра, которое в нем используется. Для просмотра этой информации тоже есть несколько команд:
У меня используется версия ядра 4.8.0-59, тут же мы видим архитектуру системы — x86_64. Обозначение SMB означает, что ядро поддерживает многоядерные процессоры или несколько процессоров. Но мы можем узнать ту же информацию, посмотрев содержимое файла /proc/version:
А еще можно посмотреть строку параметров запуска ядра, она тоже содержит версию:
Есть еще несколько файлов с подобной информацией:
Как узнать архитектуру компьютера
Вы уже знаете как узнать версию Linux, имя дистрибутива и ядро, архитектура уже проскальзывала в командах выше, но существует отдельная команда, которая выводит только архитектуру:
Для этих же целей можно использовать uname:
Выводы
Теперь вы знаете как посмотреть версию Linux. Как видите, в Linux достаточно много способов для решения этой задачи. Надеюсь, эта информация была полезной для вас.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.