在 Linux 内核的 uname -v 输出字符串中添加一些额外的信息

Posted

技术标签:

【中文标题】在 Linux 内核的 uname -v 输出字符串中添加一些额外的信息【英文标题】:Adding some extra info in uname -v output string in linux kernel 【发布时间】:2012-09-20 00:36:13 【问题描述】:

在我的 Linux 机器上运行时

uname -v

它给了我

#83-Ubuntu SMP Wed Jan 4 11:12:07 UTC 2012

现在我正在构建我的自定义内核,我需要在这个字符串中显示一些关于构建的标志/文本信息..

我想要类似的东西 如果某些配置打开,则在该字符串中添加BUILD-XYZ

   #83-Ubuntu SMP Wed Jan 4 11:12:07 UTC 2012 BUILD-XYZ

如果没有,则在其中添加BUILD-ABC

  #83-Ubuntu SMP Wed Jan 4 11:12:07 UTC 2012 BUILD-ABC

【问题讨论】:

【参考方案1】:

使用GNU awk 有几种方法可以做到这一点,这是一种:

uname -v | awk ' printf (/some config/) ? $0" BUILD-XYZ\n" : $0" BUILD-ABC\n" '

【讨论】:

我想在内核代码中执行此操作。因此,当任何用户执行 uname-v 时,它都会产生字符串【参考方案2】:

变量 CONFIG_LOCALVERSION(在您的内核 .config 文件中)允许您设置一个自定义字符串,该字符串将附加到内核版本号,因此在使用 'uname' 时显示。

这是你想要的吗?

【讨论】:

哦,是的,这就是我终于做到了..!!

以上是关于在 Linux 内核的 uname -v 输出字符串中添加一些额外的信息的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7.2 Linux 内核版本查看简述

CentOS 查看系统内核和版本

内核版本不会在 uname -r (Arch Linux)中更新[关闭]

uname Syscall 缺少操作系统字符串存在于 uname -a 输出中

Linux命令 uname:查看系统与内核相关信息

Linux内核分析第四周作业