当前运行的内核版本用 uname -r 获取,如 6.8.0-45-generic;所有已安装内核镜像用 dpkg --list | grep 'linux-image-[0-9]' 查看;完整构建信息用 uname -a 或 cat /proc/version;/boot/vmlinuz-* 可列出已部署内核版本。

要确认当前Ubuntu系统正在运行哪个内核版本,比如排查驱动兼容性、验证升级是否生效或向技术支持提供准确信息,必须获取实时加载的内核标识,而非安装包列表中的版本。
查看当前正在运行的内核版本
打开终端(Ctrl+Alt+T),输入以下命令:
uname -r
回车后直接输出类似 6.8.0-45-generic 的字符串——这是当前实际启用的内核版本号,精确到补丁级,【不可用 dpkg -l 查看的安装列表替代】,因为已安装但未启动的内核不会影响当前系统行为。
查看所有已安装的内核镜像包
终端中执行:
dpkg --list | grep 'linux-image-[0-9]'
该命令列出所有已通过 apt 安装的内核镜像(image)包,包括旧版本残留。注意:带 linux-image-generic 的是元包,不对应具体内核;真正可启动的是形如 linux-image-6.5.0-25-generic 的条目。
如果输出为空,说明可能使用了非标准方式安装内核(如 mainline 内核),需改用 ls /boot/vmlinuz* 手动检查。
查看内核编译与发行信息
方法一:获取完整内核构建详情
运行 uname -a,输出包含内核名、版本、编译主机、GCC 版本及硬件架构,例如:
Linux ubuntu24 6.8.0-45-generic #45~24.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Sep 10 13:25:01 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
其中 #45~24.04.1 表示该内核为 Ubuntu 24.04 官方定制第 45 次构建。
方法二:读取内核源码编译记录
执行 cat /proc/version,返回内容含内核版本、编译器版本和 Ubuntu 发行标识,如:
Linux version 6.8.0-45-generic (buildd@lcy02-amd64-079) (gcc (Ubuntu 13.3.0-1ubuntu1~24.04) 13.3.0, GNU ld (GNU Binutils for Ubuntu) 2.42) #45~24.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Sep 10 13:25:01 UTC 2
该路径内容由内核自身提供,无需依赖外部工具或包管理器状态。
从启动文件反查可用内核版本
第一步:列出 /boot 目录下的内核镜像文件
ls -1 /boot/vmlinuz-*
第二步:对每个镜像提取版本号
逐个执行 sudo /sbin/dkms status -m $(basename $file | sed 's/vmlinuz-//') -k $(basename $file | sed 's/vmlinuz-//') 不推荐——操作复杂且易错。
更可靠做法:直接用 ls /boot/vmlinuz-* | xargs -n1 basename | sed 's/vmlinuz-//' | sort -V,可按语义化版本排序输出所有已部署内核版本号,不含任何元包干扰。











