linux极简小知识:21、如何查询/查看linux系统版本和内核版本【最全方法介绍uname、redhat-release、version、lsb_relea
uname查看系统信息(linux内核版本)
uname(全拼:unix name)命令用于显示系统信息,以及linux的内核版本。
uname -r 用于查看linux的内核版本。
uname命令的参数说明:
-a
或--all
显示全部的信息。-m
或--machine
显示架构类型。-n
或--nodename
显示在网络上的主机名称。-r
或--release
显示linux的内核版本。-s
或--sysname
显示操作系统名称。-v
显示操作系统的版本。--help
显示帮助。--version
显示版本信息。
如下:
[root@VM_0_15_centos ~]# uname Linux [root@VM_0_15_centos ~]# uname -r 3.10.0-957.21.3.el7.x86_64 [root@VM_0_15_centos ~]# uname -a Linux VM_0_15_centos 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux 复制代码
其他:
[root@VM_0_15_centos ~]# uname -m x86_64 [root@VM_0_15_centos ~]# uname -n VM_0_15_centos [root@VM_0_15_centos ~]# uname -v #1 SMP Tue Jun 18 16:35:19 UTC 2019 [root@VM_0_15_centos ~]# uname -s Linux 复制代码
SMP:对称多处理(Symmetrical Multi-Processing)或 对称多处理器 (Symmetric Multi-Processor) ,是服务器常用的一种系统架构模式。
发行版中前面的
3.10.0
是linux内核版本,是RHEL/Centos7使用的内核。
/etc/redhat-release文件查看发行版本
# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) 复制代码
/proc/version 文件查看详细版本
# cat /proc/version Linux version 3.10.0-957.21.3.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Tue Jun 18 16:35:19 UTC 2019 复制代码
lsb_release命令查看系统版本信息
lsb_release命令
lsb_release
命令显示有关的特定 Linux 发行版的 LSB(Linux Standard Base)信息,包括版本号(version number
)、发行代号(release codename
)和发行商ID(distributor ID
)。
# lsb_release -a LSB Version: :core-4.1-amd64:core-4.1-noarch Distributor ID: CentOS Description: CentOS Linux release 7.3.1611 (Core) Release: 7.3.1611 Codename: Core 复制代码
此命令适用于所有的linux,包括Redhat、SUSE、Debian等发行版,前提是安装了LSB Core。
安装LSB Core
lsb_release 是 LSB Core 软件包的一部分。默认不是必须安装在系统中。
下面是几个不同的系统安装 LSB Core 的介绍:
RHEL/Centos
sudo yum update && sudo yum install redhat-lsb-core 复制代码
RHEL8/Centos8/Fedora
sudo dnf update && sudo dnf install redhat-lsb-core 复制代码
Ubuntu, Debian
sudo apt-get update && sudo apt-get install lsb-core 复制代码
OpenSUSE
sudo zypper update && sudo zypper install lsb-core 复制代码
Arch
pacman -Syu lsb-release 复制代码
其他
上面的几个命令,尤其是uname已经列出来所有的发行版本和内核版本,及机器的信息。
此外,可能还有不怎么使用,或者,很取巧的方式,获取版本或架构位数信息的方式,如下几种的介绍。
getconf LONG_BIT 或 getconf WORD_BIT
# getconf LONG_BIT 64 复制代码
长整型的位数(long int)来表示系统的位数。
/bin/ls文件信息(
file /bin/ls
)
# file /bin/ls /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=3d705971a4c4544545cb78fd890d27bf792af6d4, stripped 复制代码
ELF 全称 “Executable and Linkable Format”,即可执行可链接文件格式,目前常见的Linux、 Android可执行文件、共享库(.so)、目标文件( .o)以及 Core 文件(吐核)均为此格式。
作者:代码迷途
链接:https://juejin.cn/post/7019101144974622750