uname已损坏:如何确定当前正在运行的内核?

威廉·珀塞尔
> uname -r
FATAL: kernel too old
> cat /proc/cmdline
FATAL: kernel too old

/ boot中有3个* .vmlinuz-linux文件。如何确定当前正在运行哪个内核?

请注意,我在具有最小外壳的有限环境中运行。我也尝试过:

> sh -c 'read l < /proc/version; echo $l'
FATAL: kernel too old
> dd if=/proc/version
FATAL: kernel too old

有什么想法吗?

吉勒斯“别再邪恶了”

您已经升级了libc(最基本的系统库),现在没有程序可用。确切地说,没有动态链接的程序起作用。

在您的特定情况下,重新启动应该可以工作。现在安装的libc需要更新的内核,如果重新启动,则应该获得该更新的内核。

只要您仍然有一个运行中的shell,通常就有一种恢复方法,但是如果您没有计划的话,这可能会很棘手。如果您没有外壳程序,那么除了重新启动外,通常没有其他解决方案。

在这里,如果不重新启动,可能无法恢复,但是至少可以轻松找出正在运行的内核。只需使用/proc/version不需要外部命令的阅读方式即可

read v </proc/version; echo $v
echo $(</proc/version)               # in zsh/bash/ksh

如果仍然有旧libc的副本,则可以使用它来运行程序。例如,如果旧的libc在其中,/old/lib并且您在中具有与此旧的libc一起使用的可执行文件,则/old/bin可以运行

LD_LIBRARY_PATH=/old/lib /old/lib/ld-linux.so.2 /old/bin/uname

如果您有一些静态链接的二进制文件,它们仍然可以使用。我建议针对这种问题安装统计链接的系统实用程序(但是您必须在问题开始之前进行此操作)。例如,在Debian / Ubuntu / Mint /…上,安装一个或多个busybox-static(基本的Linux命令行工具的集合,包括一个shell),sash(带有一些额外内置的shell),zsh-static(仅一个shell,但是内置了许多方便的工具)。

busybox-static uname
sash -c '-cat /proc/version'
zsh-static -c '</proc/version'

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何获取与当前正在运行的ipython内核关联的ipython笔记本标题

来自分类Dev

如何回到Intellij IDEA上当前正在运行的测试?

来自分类Dev

如何确定我正在运行哪个版本的Zurb Foundation

来自分类Dev

如何确定当前是否正在使用Android应用?

来自分类Dev

如何确定给定的请求是否正在运行?

来自分类Dev

如何检查当前正在运行的外壳是否为BusyBox

来自分类Dev

如何确定当前使用的网格选项

来自分类Dev

从正在运行的bash脚本中确定当前进程的优先级

来自分类Dev

如何确保我正在运行当前的库存内核?

来自分类Dev

如何找到正在运行的内核使用的引导参数?

来自分类Dev

如何找出我正在运行的内核版本?

来自分类Dev

明确确定当前运行的shell是bash还是zsh

来自分类Dev

如何确保我正在运行当前的库存内核?

来自分类Dev

如何找到正在运行的内核使用的引导参数?

来自分类Dev

如何找出我正在运行的内核版本?

来自分类Dev

如何检查正在运行的内核版本?

来自分类Dev

如何确定Hyper-V当前是否已启用/正在运行

来自分类Dev

如何在我的机器上找到当前正在运行的内核的来源?

来自分类Dev

如何确定我正在运行哪个版本的Zurb Foundation

来自分类Dev

如何确定给定的请求是否正在运行?

来自分类Dev

如何确定正在运行哪个版本的Oracle Commerce(ATG)?

来自分类Dev

如何确定具有root特权的程序正在运行?

来自分类Dev

如何确定终端中是否正在运行某个进程?

来自分类Dev

如何确定我正在运行哪个版本的Varnish?

来自分类Dev

如何在运行Apache2的Ubuntu 14.04中确定当前的MaxClients

来自分类Dev

如何获取当前正在运行的系统的未使用内核模块的列表?(静态和已加载)

来自分类Dev

Babel to File正在运行。通过Webpack到文件的Babel已损坏

来自分类Dev

确定当前正在使用哪个数组列表?

来自分类Dev

确定当前正在使用哪个网络接口

Related 相关文章

  1. 1

    如何获取与当前正在运行的ipython内核关联的ipython笔记本标题

  2. 2

    如何回到Intellij IDEA上当前正在运行的测试?

  3. 3

    如何确定我正在运行哪个版本的Zurb Foundation

  4. 4

    如何确定当前是否正在使用Android应用?

  5. 5

    如何确定给定的请求是否正在运行?

  6. 6

    如何检查当前正在运行的外壳是否为BusyBox

  7. 7

    如何确定当前使用的网格选项

  8. 8

    从正在运行的bash脚本中确定当前进程的优先级

  9. 9

    如何确保我正在运行当前的库存内核?

  10. 10

    如何找到正在运行的内核使用的引导参数?

  11. 11

    如何找出我正在运行的内核版本?

  12. 12

    明确确定当前运行的shell是bash还是zsh

  13. 13

    如何确保我正在运行当前的库存内核?

  14. 14

    如何找到正在运行的内核使用的引导参数?

  15. 15

    如何找出我正在运行的内核版本?

  16. 16

    如何检查正在运行的内核版本?

  17. 17

    如何确定Hyper-V当前是否已启用/正在运行

  18. 18

    如何在我的机器上找到当前正在运行的内核的来源?

  19. 19

    如何确定我正在运行哪个版本的Zurb Foundation

  20. 20

    如何确定给定的请求是否正在运行?

  21. 21

    如何确定正在运行哪个版本的Oracle Commerce(ATG)?

  22. 22

    如何确定具有root特权的程序正在运行?

  23. 23

    如何确定终端中是否正在运行某个进程?

  24. 24

    如何确定我正在运行哪个版本的Varnish?

  25. 25

    如何在运行Apache2的Ubuntu 14.04中确定当前的MaxClients

  26. 26

    如何获取当前正在运行的系统的未使用内核模块的列表?(静态和已加载)

  27. 27

    Babel to File正在运行。通过Webpack到文件的Babel已损坏

  28. 28

    确定当前正在使用哪个数组列表?

  29. 29

    确定当前正在使用哪个网络接口

热门标签

归档