Existe um comando para descobrir a distribuição do SO no qual estou conectado através do SSH? uname
pode ser usado para imprimir muitas informações, mas aparentemente não a distribuição (por exemplo, RedHat, Ubuntu etc.) nem a versão dessa distribuição.
20
cat /etc/*release
e/etc/issue
me dê as informações precisas de que preciso.lsb_release -a
deve funcionar na maioria das distribuições.fonte
lsb_release -i -s
funciona na maioria dos sistemas que tenho apenas para obter o ID do fornecedor. Infelizmente, o lsb_release não faz parte da instalação básica nos meus sistemas menores / incorporados, portanto, ele deve ser testado primeiro.lsb-release
pacote, que, de fato, não é o padrão. Sua ausência é um forte indicador do Debian. :-)lsb_release
não existe em alguns novos derivados RHEL6, como Scientific Linux 6.1 ou Fedora Linux 16.lsb_release e mais / etc / redhat-release para redhat e fedora eu não tenho idéia sobre o ubuntu e todas as outras distribuições
fonte
Geralmente / etc / motd também fornece o nome da distribuição ...
fonte
uname -o
O binário uname é encontrado em quase todos os sistemas Linux e o sinalizador -o faz o melhor para devolver o sistema operacional. O lsb_release também funciona, mas não é tão onipresente.
fonte
uname -o
, se isso voltar como apenas GNU / Linux, a execuçãolsb_release -i -s
parece funcionar em todos os meus sistemas.Se você usar a
-a
bandeirauname
, ela deve funcionar a maior parte do tempo. Por exemplo, na minha máquina atual do Ubuntuuname -a
imprime:Linux clark-laptop 2.6.35-25-generic #43-Ubuntu SMP Thu Jan 6 22:25:21 UTC 2011 x86_64 GNU/Linux
fonte