A volte è necessario conoscere l'esatta versione del kernel o la versione del sistema operativo durante la risoluzione di un problema o la fornitura di informazioni al team di supporto. Questo post ti aiuterà a determinare il sistema operativo e la versione del kernel del sistema CentOS o RHEL in esecuzione.
Ci sono 2 cose principali da controllare quando si tratta di trovare la versione di qualsiasi sistema Linux. Sono
1. Controlla il livello di aggiornamento del sistema operativo
2. Controlla la versione del kernel in esecuzione
1. Controlla il livello di aggiornamento del sistema operativo CentOS/RHEL
I 4 file mostrati di seguito forniscono la versione di aggiornamento del sistema operativo CentOS/Redhat.
- /etc/centos-release
- /etc/os-release
- /etc/redhat-release
- /etc/system-release
Il contenuto di ciascuno dei file sopra da un sistema CentOS 7.4 è mostrato di seguito.
# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core)
# cat /etc/centos-release CentOS Linux release 7.4.1708 (Core)
# cat /etc/os-release NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:7" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-7" CENTOS_MANTISBT_PROJECT_VERSION="7" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="7"
# cat /etc/system-release CentOS Linux release 7.4.1708 (Core)
I 4 file precedenti sono forniti dal pacchetto centos-release.
# rpm -ql centos-release | grep release$ /etc/centos-release /etc/os-release /etc/redhat-release /etc/system-release
Puoi scoprire le informazioni sulla versione controllando il controllo delle versioni riportato nel database rpm. Ad esempio:
# rpm -qf /etc/redhat-release centos-release-7-4.1708.el7.centos.x86_64
2. Controlla la versione del kernel in esecuzione
Puoi scoprire quale versione e architettura del kernel CentOS stai utilizzando con il comando uname. Esegui "man uname" per i dettagli del comando uname.
Esempi:
# uname -s -r Linux 3.10.0-693.21.1.el7.x86_64
# uname -a Linux geeklab 3.10.0-693.21.1.el7.x86_64 #1 SMP Wed Mar 7 19:03:37 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Controlla il tempo di compilazione del kernel (uname -v ) e confronta con il valore noto:
# uname -v #1 SMP Wed Mar 7 19:03:37 UTC 2018
Puoi anche verificare il pacchetto del kernel usando il comando rpm. Il comando produrrebbe un output solo in caso di problemi con il kernel installato.
# rpm -q --verify kernel-3.10.0-693.21.1.el7.x86_64
Verifica della versione di CentOS 7
Oltre a tutti i comandi precedenti, puoi anche usare il comando “hostnamectl ” per trovare le informazioni sulla versione del sistema operativo nei sistemi CentOS 7. Ad esempio:
# hostnamectl Static hostname: geeklab Icon name: computer-vm Chassis: vm Machine ID: f9afeb75a5a382dce8269887a67fbf58 Boot ID: 668b5c55c6b9438b9356438d8beceec6 Virtualization: xen Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 3.10.0-693.21.1.el7.x86_64 Architecture: x86-64
Verifica della versione LSB
Un altro modo per controllare la versione di centOS è usare il comando "lsb_release". Il comando lsb_release è fornito dal pacchetto “redhat-lsb”. Questo pacchetto potrebbe non essere presente per impostazione predefinita sul sistema e potrebbe essere necessario installarlo prima.
# yum install redhat-lsb
Esempi di comando lsb_release:
# lsb_release -d Description: CentOS Linux release 7.4.1708 (Core)
# lsb_release -r Release: 7.4.1708
# lsb_release -a LSB Version: :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch Distributor ID: CentOS Description: CentOS Linux release 7.4.1708 (Core) Release: 7.4.1708 Codename: Core
Verifica la versione del sistema operativo con i file di configurazione di GRUB
L'uso del file di configurazione di GRUB non è un modo consigliato per controllare la versione del sistema operativo, ma vorrei comunque menzionare questo metodo qui per tua informazione. Cerca la voce "menu" (per CentOS 7) e il "titolo" (per CentOS 6) nel file di configurazione di GRUB per trovare la versione del sistema operativo.
Esempio CentOS 7
# cat /boot/grub2/grub.cfg | grep -w menuentry menuentry 'CentOS Linux (3.10.0-693.21.1.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-693.21.1.el7.x86_64-advanced-0f790447-ebef-4ca0-b229-d0aa1985d57f' { menuentry 'CentOS Linux (3.10.0-693.17.1.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-693.17.1.el7.x86_64-advanced-0f790447-ebef-4ca0-b229-d0aa1985d57f' {
In caso di CentOS 7, puoi anche ottenere la versione corrente del kernel dal file /boot/grub2/grubenv . Ad esempio:
# grep saved_entry /boot/grub2/grubenv saved_entry=CentOS Linux (3.10.0-693.21.1.el7.x86_64) 7 (Core)
Esempio CentOS 6
# cat /boot/grub/grub.conf | grep title title CentOS (2.6.32-696.20.1.el6.x86_64) title CentOS (2.6.32-696.18.7.el6.x86_64)