Como identifico qual distribuição Linux está em execução?

Como identifico qual distribuição Linux está em execução?

Temos alguns novos hardwares em nosso escritório que executam seu próprio sistema operacional Linux personalizado.

Como faço para descobrir em qual distro ele se baseia?

Responder1

Uma pergunta muito próxima a esta foi postada no Unix.StackexchangeAQUI Gilestem um bem completo | resposta legal para as maneiras que ele descreve.

# cat /proc/version

Linux version 2.6.32-71.el6.x86_64 ([email protected]) (gcc version 4.4.4 20100726 (Red Hat 4.4.4-13) (GCC) ) #1 SMP Fri May 20 03:51:51 BST 2011  
#unome -a

Linux system1.doofus.local 2.6.32-71.el6.x86_64 #1 SMP Sex, 20 de maio 03:51:51 BST 2011 x86_64 x86_64 x86_64 GNU/Linux
# cat /etc/issue

CentOS Linux release 6.0 (Final)
Kernel \r on an \m

cat /proc/config.gz cat /usr/src/linux/config.gz cat /boot/config*

Embora eu tenha feito algumas verificações e isso não era muito confiável, exceto no SUSE.

# zcat /proc/config.gz | grep -i kernel
CONFIG_SUSE_KERNEL=y
# CONFIG_KERNEL_DESKTOP não está definido
CONFIG_LOCK_KERNEL=y

Liberar arquivos em /etc(de Unix.com)

  • Novell SuSE---> /etc/SuSE-release
  • Red Hat--->/etc/redhat-release, /etc/redhat_version
  • Fedora-->/etc/fedora-release
  • Slackware--->/etc/slackware-release, /etc/slackware-version
  • Debian antigo --->/etc/debian_release, /etc/debian_version
  • Novo Debian --->/etc/os-release
  • Mandrake--->/etc/mandrake-release
  • Cachorro amarelo ->/etc/yellowdog-release
  • Sun JDS--->/etc/sun-release
  • Solaris/Sparc--->/etc/release
  • Gentoo--->/etc/gentoo-release

Há também um script bash no link Unix.com que alguém escreveu para automatizar a verificação.

Descobrir qual gerenciador de pacotes você possui é uma boa pista.

rpm yum apt-get zypper+muitos mais

Embora isso não seja infalível, pois o fornecedor pode usar o que quiser. Na verdade, isso apenas lhe dá um ponto de partida.

# dmesg | menos

Linux versão 2.6.32.12-0.7-default (geeko@buildhost) (gcc versão 4.3.4 [gcc-4_3-branch revisão 152973] (SUSE Linux)) #1 SMP 2010-05-20 11:14:20 +0200

praticamente as mesmas informações que cat /proc/version&uname

Responder2

Você vai querer usar:

$ cat /etc/*-release

Você receberá uma resposta semelhante a esta:

$ cat /etc/*-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=11.10
DISTRIB_CODENAME=oneiric
DISTRIB_DESCRIPTION="Ubuntu 11.10"

Responder3

Como primeiro palpite, tente lsb_release -a. Por exemplo, em um sistema Arch Linux, ele fornece

Versão LSB: n/a
ID do Distribuidor: archlinux
Descrição:
Versão do Arch Linux: Rolling
Codename: n/a

No entanto, isso pode falhar, então você terá que fuçar /etc(provavelmente está dentro de um arquivo cujo nome termina com -release). Também cat /etc/issuepode ajudar.

informação relacionada