你可以独立于其他方式更新Linux内核吗?

我有一台在Linux 2.4.x上启动的机器,然后更新到Linux 2.6.x. 现在已经更新到Linux 2.6.18。 每次只有内核已经更新。 原来的一套工具(binutils,glibc …)仍然存在(显然这不是理想的)。

我的问题是,鉴于内核更新和旧的工具,我希望机器运行良好吗? 或者,在内核版本xyz是否兼容的情况下,您需要一套新的工具?

如果重要的话,机器做的最奇特的事情是软件RAID(但是这可以消失)和NFS。

推动你的运气:
* nix通常被devise为相当模块化 – 但在我看来,从2.4.x到2.6.x可能会推动你的运气,因为这是一个重要的版本。 这是因为有些程序在构build时会使用内核提供的头文件和数据结构(keepalived是一个想到的例子)。

考虑分配:
分布存在的主要原因之一是为了保持兼容性。 在许多人的眼中,一个支持他们很多兼容性问题的组织将会在被推到稳定之前被发现和解决。 我会考虑使用一个标准的发行版,如CentOS / Redhat或Debian / Ubuntu。

不知道细节,我猜你会在这个位置,因为你不能轻松地重新创build这台机器和它的function与一个新的安装。 如果你是在这个地方,这是一个糟糕的地方。 如果你有一个失败,需要恢复,这将是真正的压力。

大多数情况下,它会按预期工作。

你可能有使用不赞成使用(或更糟,退休)的Linux系统调用的用户态进程,但通常这些进程没有警告就退休了。你有没有看到任何警告?

你也可能有内核/模块,可能会使用更新的调用,那么你的binutils / glibc版本也可以使用,但是如果你遇到这些,那么在构build时就会出错。

大部分情况下,如果你已经成功升级到2.6.18,你应该没有2.6.32甚至3.0的重大问题。 有一些驱动程序名称的变化,可能会影响到你,但确保你仍然有你的旧内核可用的GRUB应该帮助你避免一个情况,你需要使用救援光盘。

一些你可能需要validation的内核包括udev,initscripts(如果你使用debian,redhat或类似的),iptables / etables / arptables。