当我跑步时
uname -r
我的Debian7上有3.2.0-4-686-pae,我的Gentoo上有4.4.26-gentoo。
但我无法在任何地方找到的是这些发行版使用的Linux内核源版本。如果我理解正确,所有发行版都从这里获取内核源代码https://www.kernel.org。那么我如何才能知道该网站的Linux内核版本是使用4.4.26-gentoo还是3.2.0-4-686-pae,例如?
答案 0 :(得分:1)
尝试man uname
并找到-v用于所使用的内核版本。 ;)
如果您不关心具体细节并想要全部看到它,那么它是uname -v
或uname -a
。 :P
$ uname -v
#1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19)
$ uname -a
Linux Phobos 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 GNU/Linux
查看uname -r
中uname -v
部分与uname -a
部分之间的差异(-a中的第一个版本号)
$ uname -r
3.16.0-4-amd64
答案 1 :(得分:0)
你有办法知道linux内核版本:
好方法
uname -r
糟糕的方式看内核版本(你应该看到vmlinu * initrd文件的版本,如果他们有内核的版本号)
ls /boot | grep "vmlinu*"; ls /boot | grep "initrd*"
您可以尝试这种方式来了解您计算机上的所有内核版本:
ls /lib/modules/
答案 2 :(得分:0)
.include(u => u.Employments)
是最简单的方法。
尽管有诸如screenfetch或neofetch之类的实用程序,可以以清晰漂亮的方式为您提供更多信息。
只需运行uname -r
,它就会显示详细信息。
(如今,大多数发行版通常都预安装了screenfetch)。
如果未安装,只需运行screenfetch
(在基于debian的发行版(如ubuntu)上)或sudo apt install screenfetch
(在基于Arch的发行版上。
答案 3 :(得分:0)
如果您正在寻找匹配可浏览的原始 Linux 内核版本
https://elixir.bootlin.com/linux/vx.y.z/
或者LINUX_KERNEL_CODE你在开发内核代码的时候查的,“uname”不是正确答案!
有两种方法(我以我的 Ubuntu 16.04 为例):
dmesg
dmesg | grep "Linux\ 版本"
[ 0.000000] Linux 版本 4.4.0-210-generic (buildd@lgw01- amd64-009) (gcc 版本 5.4.0 20160609 (Ubuntu 5.4.0- 6ubuntu1~16.04.12) ) #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 (Ubuntu 4.4.0-210.242-generic 4.4.262)
原来的内核版本是4.4.262!而 4.4.0-210-generic 是 Ubuntu 的内核号。
安装内核源码使用命令如
sudo apt-get install linux-source
查看新安装的文件('uname -r' => 4.4.0-210-generic)
/lib/modules/4.4.0-210-generic/build/include/generated/uapi/linux/version.h
#define LINUX_VERSION_CODE 263423
#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
那个版本代码是 0x0404FF 表示 4.4.[>=255](其中 FF 表示补丁超过 255 时)。
--------下面有趣的阅读--------
看文件很有趣
/lib/modules/4.4.0-210-generic/build/include/generated/utsrelease.h
#define UTS_RELEASE "4.4.0-210-generic"
#define UTS_UBUNTU_RELEASE_ABI 210
现在我们知道 uname 和 /proc/version 从哪里获得它们的编号。
在我的 Ubuntu 20.04 5.4.0-80-generic 上
dmesg | grep "Linux\ versin"
[ 0.000000] Linux version 5.4.0-80-generic (buildd@lcy01-
amd64-030) (gcc version 9.3.0 (Ubuntu 9.3.0-17ubuntu1~20.04))
#90-Ubuntu SMP Fri Jul 9 22:49:44 UTC 2021
(Ubuntu 5.4.0-80.90-generic **5.4.124**)
和 LINUX_KERNEL_CODE 是
$ cat /lib/modules/5.4.0-80-generic/build/include/generated/uapi/linux/version.h
#define LINUX_VERSION_CODE 328828
其中 328828 = 0x05047C,表示 5.4.124。