查找 Linux 内核构建日期/时间?

查找 Linux 内核构建日期/时间?

在 Linux 发行版中,比如说 Ubuntu 14.04,如何找到编译/构建这个特定 Linux 内核的时间和日期?

答案1

在 Ubuntu、任​​何其他 Linux 发行版以及许多其他基于 UNIX 的系统上,您可以使用uname来查找此信息。您想要uname -v“内核版本信息”:

$ uname -v
#838 SMP Tue Feb 9 13:15:09 GMT 2016

$ uname -v
Darwin Kernel Version 14.5.0: Tue Sep  1 21:23:09 PDT 2015; root:xnu-2782.50.1~1/RELEASE_X86_64

$ uname -v
FreeBSD 10.2-RELEASE-p9 #0: Thu Jan 14 01:32:46 UTC 2016     [email protected]:/usr/obj/usr/src/sys/GENERIC

请注意,并非所有 POSIX 系统都会显示构建日期作为此输出的一部分,或者uname根本不会通过(但 Linux、BSD 和 Mac OS 会!)。

显示的日期戳是编译内核时的日期/时间。

在 Linux 上,您还可以执行以下操作:

$ cat /proc/version
Linux version 4.2.0-27-generic (buildd@lgw01-12) (gcc version 5.2.1 20151010 (Ubuntu 5.2.1-22ubuntu2) ) #32-Ubuntu SMP Fri Jan 22 04:49:08 UTC 2016

根据评论中的讨论,并且只是为了向可能偶然发现此问题的其他人添加其他信息,以下是如何在其他一些 POSIX 操作系统上获取此信息:

AIX

使用该oslevel命令显示 AIX 版本、发行版、技术级别 (TL)、服务包 (SP) 和构建日期。例如,此输出显示 AIX V6.1 技术级别 8,Service Pack 1,构建于 2012 年第 45 周:

sh> oslevel -s
6100-08-01-1245

索拉里斯

在 Solaris 上,我无法找到获取真实编译日期的正确方法,但您可以通过以下方式获取内核的打包日期(构建包时)pkg info kernel

# pkg info kernel
          Name: system/kernel
       Summary: Core Kernel
   Description: Core operating system kernel, device drivers and other modules.
      Category: System/Core
         State: Installed
     Publisher: solaris
       Version: 0.5.11
 Build Release: 5.11
        Branch: 0.175.0.2.0.2.1
Packaging Date: Wed Oct 19 07:57:11 2011
          Size: 17.99 MB
          FMRI: pkg://solaris/system/[email protected],5.11-0.175.0.2.0.2.1:
                20111128T20503

惠普-UX

这看起来有点狡猾。您可以通过以下方式获取内核的链接日期(构建日期):

echo "linkstamp?s" | adb /stand/vmunix

甚至:

ls -l /stand/vmunix

相关内容