Когда вы используете незнакомый компьютер Linux / BSD / Unix (например, по SSH) из командной строки, как вы можете определить, какой дистрибутив (и какую версию этого дистрибутива) вы используете?
Некоторые варианты, которые я пробовал:
lsb_release --all
: не существует в OpenSuSE 11.3; работает на Debian Squeeze и Ubuntu 10.10.uname --all
: не дает дистрибутивной информации о SuSE и Debian; работает в Ubuntu.cat /etc/apt/sources.list
Вы можете увидеть, к каким серверам дистрибутива машина подключается для обновлений. Очевидно, что работает только для дистрибутивов на основе Debian. Не будет работать, если компьютер был настроен на использование собственного сервера репозитория.
К сожалению, ни один из них не работает во многих дистрибутивах. Есть ли простая команда для проверки?
linux
command-line
unix
linux-distributions
Механическая улитка
источник
источник
Нет единой волшебной команды, которая работает во всех дистрибутивах - вам нужно будет попробовать несколько вещей, чтобы выработать ответ.
Вещи , чтобы попытаться включить некоторые вы сделали, как
lsb_release
и другие , которые вы не имеете , как смотреть на/etc/redhat-release
,/etc/fedora-release
и т.д.источник
/etc/SuSE-release
./etc/*-release
- но есть системы без таких файлов.