查找特定的Linux内核版本的最后启动时间

[复制链接] |主动推送
查看77 | 回复0 | 2024-9-11 15:03:33 | 显示全部楼层 |阅读模式
111238zgftqgdkkuqh4xos.png
在你的Linux服务器中,你应该在一段时间内安装或升级了许多新的Kernel版本。如果你的系统中安装了多个Linux Kernels,那么你如何找到特定的Linux Kernel版本是什么时候最后启动的呢?这就是我们现在要了解的。本指南将解释如何检查一个Linux内核最后使用或启动的时间。
列出所有已安装的Linux内核
在我们找出某个特定的Linux内核何时启动之前,让我们先检查一下Linux系统中所有安装的内核列表。
默认情况下,所有安装的Linux内核及其相关文件都存储在/boot目录下。只要使用find命令检查这个目录的内容,就可以查看安装的Kernels列表。
$ find /boot/vmli*
我的Ubuntu 20.04 LTS桌面的输出示例。
/boot/vmlinuz
/boot/vmlinuz-5.4.0-64-generic
/boot/vmlinuz-5.4.0-65-generic
/boot/vmlinuz.old
111238jmm5jmgifadvmdxz.png
从上面的输出中可以看到,安装了两个Linux Kernels版本(5.4.0-64和5.4.0-65)。默认情况下,最新版本的内核将被启动,所以5.4.0-65的最后访问时间是今天。现在让我们检查一下旧版本的内核,即5.4.0-64最后一次启动的时间。
查找特定的Linux内核版本最后一次启动的时间
我们可以通过查看相关内核镜像文件的最后一次访问时间,很容易地找到一个内核的最后一次启动时间,在Linux中,有一个名为stat的命令行工具可以帮助我们找到这样的细节。在Linux中,有一个名为stat的命令行工具可以帮助我们找到这些细节。
stat命令用来显示文件和文件系统的信息,比如大小、权限、创建和访问日期等等。
要找出特定的 Linux 内核版本(例如 vmlinuz-5.4.0-64-generic)的最后启动时间,请运行。
$ stat -c %x /boot/vmlinuz-5.4.0-64-generic。
其中
-c标志用于指定FORMAT。
%x用于以人可读的格式显示最后一次访问的时间。
输出示例:
2021-01-23 13:15:00.000000000 +0530
根据上面的输出,Linux内核版本5.4.0-64最后一次启动是在2021年1月23日。
如果你想在输出中显示Unix纪元时间,也可以在上面的命令中使用大写的%X标志。
$ stat -c %X /boot/vmlinuz-5.4.0-64-generic
1611387900
另一种查找Linux内核访问时间的方法是使用find命令,如下所示。
$ find /boot/vmlinuz-5.4.0-64-generic -printf "%A@ %p\n"
1611387900.0000000000 /boot/vmlinuz-5.4.0-64-generic
使用 journalctl 命令显示特定 Linux 内核版本的最后启动时间。
在使用Systemd服务管理器的现代Linux发行版中,我们可以使用journalctl命令来显示Linux内核最后使用或启动的时间。
要查看最近一次启动的时间,请运行这个命令。
$ journalctl --boot | grep "Linux version"
或者,
$ journalctl -b | grep "Linux version"
111238ek10gtkktk8kp06k.png
要列出所有可用的先前启动,请运行:
$ journalctl --list-boots
您将看到一长串先前的启动。
现在,您可以检查每个引导描述符,以查找上次使用特定内核版本的时间。
例如:$ journalctl --boot=ba8b180cade44f2bad11710b72b69475 | grep "Linux version"
至此,如何查找特定的Linux内核版本的最后启动时间就介绍完成了,希望对您有所帮助。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则