Consultar qual distribuição Linux / Unix você está usando (na linha de comando) [duplicado]

8

Ao usar um computador Linux / BSD / Unix desconhecido (por exemplo, por SSH) na linha de comando, como você pode dizer qual distribuição (e qual versão dessa distribuição) você está usando?

Algumas opções que eu tentei:

  • lsb_release --all: não existe no OpenSuSE 11.3; funciona no Debian squeeze e no Ubuntu 10.10.
  • uname --all: não fornece informações de distribuição sobre SuSE e Debian; trabalha no Ubuntu.
  • cat /etc/apt/sources.listvocê pode ver em quais servidores de distribuição a máquina se conecta para obter atualizações. Obviamente, só funciona para distribuições baseadas no Debian. Não funcionará se o computador tiver sido configurado para usar um servidor de repositório personalizado.

Infelizmente, nenhuma dessas parece funcionar em muitas distribuições. Existe um comando simples para verificar?

Caracol mecânico
fonte

Respostas:

11

Se o Python 2.3 ou posterior estiver instalado, isso funcionará com muitas distribuições :

python -c "import platform; print platform.dist()"
Patches
fonte
10

cat / proc / version

pode fazer o truque.

Journeyman Geek
fonte
3
Existem muitos unixes que não suportam o pseudo-sistema de arquivos / proc.
dmckee --- gatinho ex-moderador
1

Não existe um comando mágico que funcione em todas as distribuições - você precisará tentar uma série de coisas para encontrar uma resposta.

Coisas para tentar incluir algum você tem feito, como lsb_release, e outros que você não tem como olhar /etc/redhat-release, /etc/fedora-release, etc.

TomH
fonte
Também /etc/SuSE-release.
Caracol mecânico
11
Verifique /etc/*-release- mas existem sistemas sem esses arquivos.
21711 Keith Thompson