узнать версию программы
Как узнать версию программы, находящейся в репозитории Debian, без помощи пакетных менеджеров?
Посмотреть на packages.debian.org?
Посмотреть на сайте Debian’а [pokerface.png]
ну или искать в man ключ.
Буду рад услышать от ылиты более Ъ-методы. Подписался.
Проwgetить ее каталог
без браузера желательно
дело в том, что у тс не debian
И без интернета? Но зачем? 🙂
Точнее проcurlить. Я даже однострочник наваял на коленке:
Извращенец?
aptitude versions package
Решает
спс, а чем так wine не угодил?
ну не debian у меня
потому что пиво дороже выходит при таком же количестве эффекта, а коньяк мне жинка запретила временно. Да, а вообще я против вина и за коньяк
Я думаю в этом твоя и проблема, что у тебя не debian.
А по теме думаю или packages качать, либо на packages.debian.org смотреть. Надо учитывать, что несколько веток (stable, testing, sid, experimental, backports) и то что пакет может немного называться по-другому в отличие от твоего дистра.
и не дебиан, и не сходить в интернет? Тогда только через libastral.
А это здесь причем? В любом случае без интернета никак не узнать. Зачем тогда эти извращения — «без браузера» не понимаю. Правильный ответ прозвучал еще в первом комментарии, а способы как оттуда извлечь информацию уже зависит от фантазии.
без помощи пакетных менеджеров
А имя пакета с программой и расположение его в зеркале телепатия подскажет.
Давай переформулируем вопрос. Как хоть в каком-нибудь дистрибутиве узнать версию программы без пакетного менеджера и без браузера?
Посему оговорку про коленку и написал. Сложный и правильный пример пусть пишут те, у кого неарч
Дубль два показывает версии исходников со странички(поправьте регекспы, мне лень):
В том-то и дело, что зная название пакета дёрнуть версию нетрудно. Тут ты всё правильно делаешь.
Но ведь в условии стоит «узнать версию программы». Т.е. пакет неизвестен. Вот я и пытаюсь узнать у ТС, как он без пакетного менеджера будет искать версию программы в консоли для любого дистра.
ааа. То есть ты распарсил как «узнать версию того же echo из coreutils без всего»?
спасибо, то что надо!
А разве не это имелось ввиду? 🙂
непонятно, зачем такое может быть нужно ТС. Если только не монетизировать по пути дистровотча. !а ведь он тоже парсит пакетики
dpkg -s program_name | grep Version
Зачем знать версию программы в разных дистрах как раз вопрос простой. Мало ли там, статистику собрать захотелось. Или автоматическое сравнение дистрибутивов какое.
Как узнать версию Linux
Когда вы сами устанавливали систему и все настраивали, то точно знаете какой дистрибутив у вас установлен, какая версия и какая версия ядра. Но совсем другая ситуация, когда вы покупаете VPS или пытаетесь настроить компьютер другу или знакомому с Linux. Довольно часто может возникнуть вопрос как узнать версию Linux потому что эта информация часто очень важна. Например, уязвимости в программном обеспечении часто затрагивают только определенные релизы.
В этой небольшой статье мы поговорим о том как посмотреть версию Linux через терминал и какие утилиты для этого используются и в каких конфигурационных файлах можно найти интересующую нас информацию.
Скользящие или фиксированные релизы
Все активные дистрибутивы Linux выпускают новые релизы, только все по-разному. Конечно, дистрибутивы обновляются и между релизами, но пользователям привычен такой порядок, что обновления релиза получают только исправления безопасности и ошибок, а все новые возможности выпускаются новым релизом. Но существуют и другие пути. Сейчас есть два способа выпуска релизов:
- Скользящие релизы (rolling);
- Фиксированные релизы (fixed).
Эти способы работают немного по-разному и вам нужно понимать это прежде чем мы перейдем к версии Linux. Скользящие релизы не имеют точек выпуска нового релиза, новые возможности, исправления и улучшения постоянно добавляются в официальный репозиторий и их получают пользователи. Такой подход используется в ArchLinux, Gentoo и OpenSUSE Thumbleweed. Поэтому у таких дистрибутивов нет версий, они всегда имеют самую новую версию после того, как было выполнено обновление пакетов. Но у них есть минус — это более низкая стабильность по сравнению с фиксированными релизами, которые можно хорошо протестировать.
Фиксированные релизы используются в Ubuntu. Каждые 6 месяцев выходит новый релиз, поэтому тут есть четкое разделение на версии, новая версия дистрибутива Linux получает новое программное обеспечение, а затем на протяжении всего термина поддержки получает обновления безопасности.
Как узнать версию Linux?
На самом деле для этого есть очень много методов, начиная от общих признаков и до открыть файл и точно посмотреть версию и имя дистрибутива. Рассмотрим только самые популярные из них.
Узнать дистрибутив
Прежде всего давайте узнаем имя дистрибутива и его версию если это возможно. Для этого будем смотреть содержимое файлов в папке /etc/, которые заканчиваются на release:
В Ubuntu утилита выведет содержимое двух файлов /etc/lsb-release и /etc/os-release. В них будет содержаться исчерпывающая информация о имени дистрибутива и версии его релиза:
Но если мы выполним ту же команду в ArchLinux то получим совсем другой результат:
Тут уже нет версии, есть только имя дистрибутива, поскольку ArchLinux использует систему скользящих релизов. Немного меньше, но почти всю ту же информацию можно получить используя команду lsb_release:
Также очень часто вы можете узнать имя дистрибутива посмотрев пункт «О программе» для любого системного приложения или лучше утилиты «Настройки»:
И еще один способ увидеть версию дистрибутива в основанных на Debian системах — посмотреть информацию о сборке пакета:
Или для RPM систем:
rpm -qa | grep openssl
Узнать версию ядра
Во многих случаях нам нужна не столько версия дистрибутива linux, сколько версия ядра, которое в нем используется. Для просмотра этой информации тоже есть несколько команд:
У меня используется версия ядра 4.8.0-59, тут же мы видим архитектуру системы — x86_64. Обозначение SMB означает, что ядро поддерживает многоядерные процессоры или несколько процессоров. Но мы можем узнать ту же информацию, посмотрев содержимое файла /proc/version:
А еще можно посмотреть строку параметров запуска ядра, она тоже содержит версию:
Есть еще несколько файлов с подобной информацией:
Как узнать архитектуру компьютера
Вы уже знаете как узнать версию Linux, имя дистрибутива и ядро, архитектура уже проскальзывала в командах выше, но существует отдельная команда, которая выводит только архитектуру:
Для этих же целей можно использовать uname:
Выводы
Теперь вы знаете как посмотреть версию Linux. Как видите, в Linux достаточно много способов для решения этой задачи. Надеюсь, эта информация была полезной для вас.