Acabei de configurar uma instância do EC2 executando o Linux. Existe uma maneira de obter a versão / distribuição do Linux que está sendo executada na instância por meio do terminal?
Acabei de configurar uma instância do EC2 executando o Linux. Existe uma maneira de obter a versão / distribuição do Linux que está sendo executada na instância por meio do terminal?
Respostas:
Para informações de distribuição:
cat /etc/issue
Para Kernel / arquitetura (como mencionado anteriormente):
uname -a
/etc/issue
, pois esse é um arquivo gerenciado localmente que é exibido antes do login e pode literalmente ser qualquer coisa (ou nada). :) Por exemplo, meus sistemas atualmente dizem "sistemas requerem autorização, acesso não autorizado é ilegal" lá. Qualquer um que se preocupe com segurança provavelmente não coloca todas as informações de identificação do SO no / etc / issue.
O comando portátil para distribuições compatíveis com Linux Standard Base (que é praticamente tudo popular) é lsb_release
. A distribuição pode ser obtida por "-i" e a versão vem de "-r". A opção "-s" suprime a coluna de nome e apenas mostra o valor, e -a mostra tudo o que lsb_release
sabe sobre o sistema. Então, por exemplo, em um sistema RHEL 5.5:
$ lsb_release -s -i
RedHatEnterpriseServer
$ lsb_release -s -r
5.5
$ lsb_release -a
LSB Version: :core-3.1-amd64:core-3.1-ia32:core-3.1-noarch:graphics-3.1-amd64:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: RedHatEnterpriseServer
Description: Red Hat Enterprise Linux Server release 5.5 (Tikanga)
Release: 5.5
Codename: Tikanga
Se você usa Red Hat, SuSE, Ubuntu, Debian ou qualquer outra coisa derivada deles (Fedora, CentOS, o que for), esse comando funcionará. Caso contrário, você precisará descobrir algumas informações específicas da distribuição. O RedHat, por exemplo novamente, instala um pacote chamado redhat-release
e cria um arquivo em / etc:
$ rpm -q redhat-release
redhat-release-5Server-5.5.0.2
$ cat /etc/redhat-release
Red Hat Enterprise Linux Server release 5.5 (Tikanga)
Aqui está a aparência de um sistema Amazon Linux 2 recém-provisionado (2 de fevereiro de 2017) - depois de redefinir o nome do host:
[ec2-user@fresh-amazon-host ~]$ cat /etc/system-release
Amazon Linux release 2.0 (2017.12) LTS Release Candidate
[ec2-user@fresh-amazon-host ~]$ cat /etc/os-release
NAME="Amazon Linux"
VERSION="2.0 (2017.12)"
ID="amzn"
ID_LIKE="centos rhel fedora"
VERSION_ID="2.0"
PRETTY_NAME="Amazon Linux 2.0 (2017.12) LTS Release Candidate"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2.0"
HOME_URL="https://amazonlinux.com/"
IMHO, você realmente deve usar, lsb_release
se estiver disponível. Se você está apenas visualizando, lsb_release -a
é fácil de lembrar e razoavelmente fácil de ler. Mas se isso não for uma opção, o / etc / os-release será preenchido como acima em algumas versões recentes do SO Linux.
-bash: lsb_release: command not found
. Também tentei sua segunda abordagem e não consigo encontrar nada que mencione redhat in /etc
. Alguma outra sugestão?
apt-get
não está no sistema. Não vejo nada identificável rpm -qa|less
. ls -d /etc/*rel*
trabalhou. Eu então nano /etc/system-release
. No arquivo, ele me diz que o sistema operacional é Amazon Linux AMI release 2011.02.1.1
. Obrigado.
lsb_release
não está disponível no amazon linux, o que geralmente leva a essa pergunta ser solicitada ... lsb_release
requer uma grande cadeia de dep que vem com o redhat-lsb-core
aws e escolhe deixá-lo fora - forums.aws.amazon.com/message.jspa?messageID = 519816
Isso funcionou para mim:
# cat /etc/os-release
NAME="Amazon Linux AMI"
VERSION="2015.03"
ID="amzn"
ID_LIKE="rhel fedora"
VERSION_ID="2015.03"
PRETTY_NAME="Amazon Linux AMI 2015.03"
ANSI_COLOR="0;33"
CPE_NAME="cpe:/o:amazon:linux:2015.03:ga"
HOME_URL="http://aws.amazon.com/amazon-linux-ami/"
cat /usr/share/doc/system-release/ReleaseNotes.txt
. Provavelmente isso funciona em edições mais recentes.
Como você pode ver ao fazer login em uma AMI EC2 Amazon Linux AMI:
"Consulte / usr / share / doc / release do sistema / para obter as notas de versão mais recentes."
Então ... basta digitar:
cat /usr/share/doc/system-release/ReleaseNotes.txt
Amazon Linux AMI 2011.09
.