帕克系统网 - 帕克系统家园专业干净的系统网站
最新更新 系统重装教程(一看就会视频+图文版)
当前位置: 首页 > 系统教程 > Linux系统

运维必懂!怎么查看Linux内核版本

更新日期:2023-11-19 16:55:39

来源:[db:来源]

手机扫码继续观看

1 前言

内核是操作系统的核心组件。 它管理系统的资源,是计算机硬件和软件之间的桥梁。

您可能因多种原因需要确切知道GNU / Linux操作系统上运行的内核版本。 也许您正在调试与硬件相关的问题,或者了解影响旧内核版本的新安全漏洞,并且您想知道您的内核是否易受攻击。 无论是什么原因,从命令行确定Linux内核版本都非常容易。

在本教程中,我们将向您展示几种不同的方法,以找出系统上运行的Linux内核版本。

怎么查看Linux内核版本

2 使用`uname`命令查看Linux内核版本

uname命令显示多个系统信息,包括Linux内核体系结构,名称版本和发行版。

要找出系统上正在运行的Linux内核版本,请输入以下命令:

输出结果:

Linux 3100-957122el7x86_64 x86_64

3 - 内核版本

10 - 主修订版本

0-957 - 次要修订版本

12 - 补丁版本

使用uname命令查看Linux内核版本

3 使用`hostnamectl`命令查看内核版本

hostnamectl实用程序是systemd的一部分,用于查询和更改系统主机名。 它还显示Linux发行版和内核版本:

Static hostname: CentOS7linuxrumencom

Icon name: computer-vm

Chassis: vm

Machine ID: 20c27040135a4d46b2d3d07180f37303

Boot ID: 2f495af0684e4adfb34f0366f2567460

Virtualization: vmware

Operating System: CentOS Linux 7 (Core)

CPE OS Name: cpe:/o:centos:centos:7

Kernel: Linux 3100-957122el7x86_64

Architecture: x86-64

使用以下命令只显示当前内核版本:

使用hostnamectl命令查看内核版本

4 通过查看/proc/version文件确认内核版本

/proc目录包含虚拟文件,其中包含有关系统内存,CPU内核,已安装文件系统等的信息。有关正在运行的内核的信息存储在/proc/version虚拟文件中。

结合cat查看文件内容:

输出结果如下:

Linux version 3100-957122el7x86_64 (mockbuild@kbuilderbsyscentosorg) (gcc version 485 20150623 (Red Hat 485-36) (GCC) ) #1 SMP Tue May 14 21:24:32 UTC 2019

使用hostnamectl命令查看内核版本

5结论

我们已经向您展示了如何从命令行查找在您的系统上运行的Linux内核的版本。 这些命令适用于所有流行的Linux发行版,包括Debian,Red Hat,Ubuntu,Arch Linux,Fedora,CentOS,Kali Linux,OpenSUSE,Linux Mint等。

https://wwwlinuxrumencom/rmxx/1217html

1、在之前需要介绍一个目录:proc,内存映射目录。这个目录是不占硬盘空间的,它保存着内存的真实写照,首先查看ls /proc信息;

2、可以看到,version就是我们需要查询的东西,然后在cat /proc/version查看;

3、可以看到这里的内核版本是2618,用的是红帽 412系统安装时间是2017年,2月24日,星期5 22:06:09;

4、最后的fri指的是(Friday 周五),feb指的是(February 二月),第一个红色标记指的是内核版本:linux version ,第二个红色标记指的是发行版:red hat,第三个红色标记指的是安装时间。

  以下介绍3种查看方法:

  第一种:登录linux,在终端输入 cat /proc/version     运行效果如下图:

  

  第二种:登录linux,在终端输入 uname -a   即列出linux的内核版本号 运行效果如下图:

  

  第三种:在Linux终端输入 unmae -a 即可查看linux的内核版本号 运行效果如下图:

  

你好,

RHEL/CentOS/Fedora

在终端中执行如下命令查看已安装的 Linux 内核:rpm -qa kernel或rpm -qa | grep -i kernel

Debian/Ubuntu/Linux Mint

要查看基于 DEB 系统的 Linux 内核列表,如:Debian、Ubuntu、Linux Mint、Elementary OS 等,可以使用如下命令:dpkg --list | grep linux-image

SUSE/openSUSE

在 SUSE 或 openSUSE 系统中,可以使用如下命令查看 Linux 系统内核:rpm -qa | grep -i kernel

Arch Linux

Arch Linux 及其衍生发行版本,可以使用如下命《Linux就该这样学》令查看已安装的内核列表:pacman -Q linux或pacman -Q | grep linux

如何查询Linux内核版本

终端下输入

[xxxx@ ~]uname -r

350-34-generic

查看内核版本命令:

1) [root@q1test01 ~]# cat /proc/version

Linux version 269-22EL p (bhpile@crowedevelredhat) (g version 344 20050721 (Red Hat 344-2)) #1 SMP Mon Sep 19 18:00:54 EDT 2005

2) [root@q1test01 ~]# uname -a

Linux

q1test01 269-22EL p #1 SMP Mon Sep 19 18:00:54 EDT 2005 x86_64

x86_64 x86_64 GNU/Linux3) [root@q1test01 ~]# uname -r269-22EL p

如何查询Linux内核函数

如果要看这两个函数在标准库中的定义用ctags或cscope生成索引h,cscope,可以跳转到函数定义,man malloc,声明见stdlib。

如果仍然找不到,可以用ctags,si或grep。

windows下用source insight也可,然后查找函数定义,用grep -r 搜索关键字,atoi和malloc在C的标准库中有定义。

1安装ctags

在源代码目录下运行

ctags -R

这样,会递归生成当前目录下及其子目录的tags文件。

2使用VIM根据tags文件查找函数或结构定义。

1在源码目录下查找

vi -t tagname

2如果要在任意位置使用,则需要把该tags文件添加到~/vimrc文件中

set tags=/home/money/sda8/26232/tags

3如果要在代码中实时跟踪,则光标移动到函数名上,使用CTRL+]键,按CTRL+t可以返回。

如果要跟踪系统函数,使用shift+K可以自动跳转道光标所在函数的手册。

如何分析LINUX内核2629版本

uname -a 显示版本号,是这意思吗?

这个问题太大了,近似于说:请教下我怎么编写一个Linux内核。

分析内核唯一可以做的就是一行行看代码,Linux早期版本有完整的代码分析,如果是指定2629的话,那估计有人做出来就可以出书收钱了……

如何根据linux内核判断linux版本

在Linux内核的顶层Makefile中,顶端就有,格式为

VERSION = 3

PATCHLEVEL = 0

SUBLEVEL = 8

EXTRAVERSION =

NAME = Sneaky Weasel

以上的版本号就是308

如何修改linux内核版本号

得重新编译内核,之前修改源代码的顶层目录下的Makefile文件,比如26291内核的Makefile中:

VERSION = 2

PATCHLEVEL = 6

SUBLEVEL = 29

EXTRAVERSION = 1

在Qt C/C++中怎样查询Linux内核版本号

查询Linux内核版本号可以调用uname函数,uname函数的函数原型是这样的:

int uname(struct utsname name);

uname函数在调用时需要向它传递一个utsname结构体指针(或地址),uname函数会写入name参数指向的utsname结构体,Linux的内核版本号就保存在utsname结构体的release成员里面,代码就像下面这样:

struct utsname uts;

if(uname(&uts) >= 0) {

printf("The version is %s\n", utsrelease);

}

注意,使用uname函数需要包含sys/utsnameh头文件:

#include <sys/utsnameh>

1查看逻辑CPU个数:

#cat /proc/cpuinfo |grep "processor"|sort -u|wc -l

24

2由于有超线程技术有必要查看一下物理CPU个数:

#grep "physical id" /proc/cpuinfo|sort -u|wc -l

2

#grep "physical id" /proc/cpuinfo|sort -u

physical id : 0

physical id : 1

查看每个物理CPU内核个数:

#grep "cpu cores" /proc/cpuinfo|uniq

cpu cores : 6

每个物理CPU上逻辑CPU个数:

#grep "siblings" /proc/cpuinfo|uniq

siblings : 12

判断是否开启了抄超线程:

如果多个逻辑CPU的"physical id"和"core id"均相同,说明开启了超线程

或者换句话说

逻辑CPU个数 > 物理CPU个数 CPU内核数 开启了超线程

逻辑CPU个数 = 物理CPU个数 CPU内核数 没有开启超线程

相关知识延伸阅读:

一次性查询所有信息:

#!/bin/bash

physicalNumber=0

coreNumber=0

logicalNumber=0

HTNumber=0

logicalNumber=$(grep "processor" /proc/cpuinfo|sort -u|wc -l)

physicalNumber=$(grep "physical id" /proc/cpuinfo|sort -u|wc -l)

coreNumber=$(grep "cpu cores" /proc/cpuinfo|uniq|awk -F':' '{print $2}'|xargs)

HTNumber=$((logicalNumber / (physicalNumber coreNumber)))

echo " CPU Information "

echo "Logical CPU Number : ${logicalNumber}"

echo "Physical CPU Number : ${physicalNumber}"

echo "CPU Core Number : ${coreNumber}"

echo "HT Number : ${HTNumber}"

echo ""

执行结果:

#/cpuinfo

CPU Information

Logical CPU Number : 24

Physical CPU Number : 2

CPU Core Number : 6

HT Number : 2

该文章是否有帮助到您?
Windows 10 系统在线下载
Windows 10 是迄今为止最好的 Windows|前往下载,成就你的非凡
立即下载 视频教程:如何安装该系统?
常见问题
系统下载排行

热门关键词
专题
安卓下载 更多
手机上观看
扫码手机上观看