Запросите, какой дистрибутив Linux / Unix вы используете (из командной строки) [duplicate]

8

Когда вы используете незнакомый компьютер 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. Не будет работать, если компьютер был настроен на использование собственного сервера репозитория.

К сожалению, ни один из них не работает во многих дистрибутивах. Есть ли простая команда для проверки?

Механическая улитка
источник

Ответы:

10

cat / proc / version

может сделать свое дело.

Подмастерье Компьютерщик
источник
3
Есть много юниксов, которые не поддерживают псевдофайловую систему / proc.
dmckee --- котенок экс-модератора
1

Нет единой волшебной команды, которая работает во всех дистрибутивах - вам нужно будет попробовать несколько вещей, чтобы выработать ответ.

Вещи , чтобы попытаться включить некоторые вы сделали, как lsb_releaseи другие , которые вы не имеете , как смотреть на /etc/redhat-release, /etc/fedora-releaseи т.д.

TomH
источник
Также /etc/SuSE-release.
Механическая улитка
1
Проверьте /etc/*-release- но есть системы без таких файлов.
Кит Томпсон