Como obter informações do sistema com o comando uname no Linux

Quer você seja um desenvolvedor trabalhando em um script que requer informações relacionadas ao kernel ou um usuário comum que está apenas curioso sobre seu sistema operacional, o comando uname é a primeira escolha quando se trata de extrair informações do sistema.

Embora uname seja bastante fácil de usar, para iniciantes, a saída do comando pode parecer sofisticada a princípio. Para tornar mais fácil para você, este guia demonstra como usar o uname para imprimir informações básicas relacionadas ao sistema no Linux.

O que é o comando uname?

Como mencionado acima, uname é um programa no Linux e em outros sistemas operacionais baseados em Unix que produz informações básicas do sistema operacional e kernel em um formato limpo. Embora uname signifique Nome Unix , o comando também foi implementado em vários outros sistemas operacionais. O comando ver é o prompt de comando do Windows equivalente a uname.

A sintaxe básica do comando é:

 uname options

… onde options são os sinalizadores que você pode especificar no comando.

Digitar uname no terminal gera o nome do kernel.

 uname

Saída:

 Linux

Mas isso não é tudo. Usar o sinalizador -a com uname fornece informações completas sobre o kernel e o sistema operacional. A bandeira -a significa Todos .

 uname -a

Saída:

Dividindo a Saída

Como você pode ver, existem vários campos exibidos na saída. Vamos falar um por um.

 Linux kali 5.10.0-kali7-amd64 #1 SMP Debian 5.10.28-1kali1 (2021-04-12) x86_64 GNU/Linux
  • Nome do kernel : o nome do kernel em execução no seu dispositivo. Nesse caso, o nome do kernel é Linux .
  • Nome do host : o segundo campo é reservado para o nome do host do sistema. A maioria das distribuições do Linux permite que um usuário configure o nome do host no momento da instalação. Como esta é uma instalação do Kali Linux, o nome de host padrão do sistema é kali .
  • Versão do kernel : O próximo campo indica a versão do kernel. Na saída acima, você pode ver que a versão do kernel é 5.10.0-kali7-amd64 .
  • Versão do kernel : a versão do kernel do Linux instalada em seu computador. Neste caso, a versão do kernel é # 1 SMP Debian 5.10.28-1kali1 (2021-04-12) .
  • Nome do hardware da máquina : o nome do hardware é a arquitetura da CPU do seu sistema. Na saída mencionada anteriormente, x86_64 é o nome do hardware.
  • Sistema operacional : o último campo da saída exibe o nome do sistema operacional. Nesse caso, o nome do sistema operacional é GNU / Linux .

Relacionado: O que é um kernel no Linux e como você verifica sua versão?

O Uname também exibe vários outros campos, como o tipo de processador e a plataforma de hardware do sistema. A razão pela qual ele não gerou esses campos específicos é que as informações correspondentes a esses campos são desconhecidas para o comando. Portanto, em vez de exibir desconhecido , os desenvolvedores optaram por retirar esses campos da saída.

Exibir informações individuais usando uname

Além do sinalizador -a , existem outras opções que você pode usar com uname. Cada um dos sinalizadores adicionais é mapeado para um único campo e pode ser usado para exibir esse campo específico na saída.

Por exemplo, se você deseja apenas o nome do sistema operacional, use o sinalizador -o :

 uname -o

Saída:

 GNU/Linux

Da mesma forma, você pode usar as oito opções a seguir com uname para gerar campos individuais.

  • Nome do kernel : -s
  • Nome do host : -n
  • Versão do kernel : -r
  • Versão do kernel : -v
  • Nome do hardware da máquina : -m
  • Processador : -p
  • Plataforma de hardware : -i
  • Sistema operacional : -o

Para obter ajuda de linha de comando e exibir as informações de versão associadas ao uname, use os sinalizadores –help e –version respectivamente.

 uname --help

Saída:

 uname --version

Saída:

 uname (GNU coreutils) 8.32
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by David MacKenzie.

Nada está oculto no Linux. Ao contrário do Windows e de outros sistemas operacionais, o código-fonte do Linux é de código aberto e de distribuição gratuita. Isso significa que qualquer pessoa pode acessar o código do kernel do Linux e modificá-lo para atender às suas necessidades.

No entanto, isso exige experiência e habilidades, pois entender o código-fonte do kernel não é moleza. Alguém que está apenas começando com a linguagem de programação C terá que obter amplo conhecimento em desenvolvimento antes de começar a desenvolver o kernel do Linux.