如何获取linux内核的构建器名称

时间:2013-06-28 10:23:07

标签: shell linux-kernel

当linux内核启动时,它将打印内核版本和构建器,以及工具链信息。如下所示:

Booting Linux on physical CPU 0
Linux version 3.4.24 (whobuilderthis@cl-builder23) 

那么如何获取构建器whobuilderthis字符串(使用shell)?它存放在哪里? 提前谢谢。

3 个答案:

答案 0 :(得分:2)

您可以查询应包含构建器字符串的/proc/version

shell@android:/ $ cat /proc/version                                            
Linux version 3.0.31-g9f818de (android-build@vpbs1.mtv.corp.google.com) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #1 SMP PREEMPT Wed Nov 28 11:20:29 PST 2012

答案 1 :(得分:1)

dmesg提供了内核日志,因此您应该能够grep / sed从那里开始:

dmesg | grep 'Linux version ' | sed 's/[^(]*(\([^)]*\)).*/\1/'

(有更聪明的方法可以做到这一点。)

答案 2 :(得分:0)

根据Documentation / kbuild / kbuild.rst:

KBUILD_BUILD_USER,KBUILD_BUILD_HOST

这两个变量允许覆盖在运行过程中显示的user @ host字符串 启动并在/ proc / version中。默认值是命令的输出 whoami和主持人。

因此,“ / proc / version”将输出当前正在运行的内核的结果。 如果要更改内容,则需要在内核构建机器上覆盖上述2个变量。