Acabo de configurar una instancia EC2 con Linux. ¿Hay alguna manera de obtener la versión / distribución de Linux que se ejecuta en la instancia a través del terminal?
Acabo de configurar una instancia EC2 con Linux. ¿Hay alguna manera de obtener la versión / distribución de Linux que se ejecuta en la instancia a través del terminal?
Respuestas:
Para información de distribución:
cat /etc/issue
Para Kernel / arquitectura (como se mencionó anteriormente):
uname -a
/etc/issue
, ya que es un archivo administrado localmente que se muestra antes del inicio de sesión y literalmente podría ser cualquier cosa (o nada). :) Por ejemplo, mis sistemas actualmente dicen "los sistemas requieren autorización, el acceso no autorizado es ilegal" allí. Cualquiera que se preocupe por la seguridad probablemente no ponga toda la información de identificación del sistema operativo en / etc / issue.
El comando portátil para distribuciones compatibles con Linux Standard Base (que es prácticamente todo lo popular) es lsb_release
. La distribución se puede obtener con "-i" y la versión proviene de "-r". La opción "-s" suprime la columna de nombre y solo muestra el valor, y -a muestra todo lo que lsb_release
sabe sobre el sistema. Entonces, por ejemplo en un 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
Si está en Red Hat, SuSE, Ubuntu, Debian o cualquier otra cosa derivada de ellos (Fedora, CentOS, lo que sea), este comando funcionará. De lo contrario, tendrás que encontrar información específica de la distribución. RedHat, por ejemplo nuevamente, instala un paquete llamado redhat-release
y crea un archivo en / 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)
Así es como se ve en un sistema Amazon Linux 2 recién aprovisionado (2 de febrero de 2017), después de restablecer el nombre de 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/"
En mi humilde opinión, realmente debería usar lsb_release
si está disponible. Si solo lo está haciendo visualmente, lsb_release -a
es fácil de recordar y razonablemente fácil de leer. Pero si esa no es una opción, / etc / os-release se completa como anteriormente en bastantes versiones recientes del sistema operativo Linux.
-bash: lsb_release: command not found
. También probé su segundo enfoque y no puedo encontrar nada que mencione redhat /etc
. ¿Cualquier otra sugerencia?
apt-get
No está en el sistema. No veo nada identificable con rpm -qa|less
. ls -d /etc/*rel*
trabajó. Yo entonces nano /etc/system-release
. En el archivo me dice que el sistema operativo es Amazon Linux AMI release 2011.02.1.1
. Gracias.
lsb_release
que no está disponible en Amazon Linux, lo que generalmente lleva a lsb_release
que se haga esta pregunta ... requiere una gran cadena de distribución que viene con redhat-lsb-core
y aws decide dejar eso fuera - foros.aws.amazon.com/message.jspa?messageID = 519816
Esto funcionó para mí:
# 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
. Esto probablemente funciona en las nuevas ediciones.
Como puede ver al iniciar sesión en un AMI EC2 Amazon Linux AMI:
"Consulte / usr / share / doc / system-release / para obtener las últimas notas de la versión".
Entonces ... solo escribe:
cat /usr/share/doc/system-release/ReleaseNotes.txt
Amazon Linux AMI 2011.09
.