我的centos版本是:
2.6.32-131.17.1.el6.x86_64 #1 SMP 10 月 6 日星期四 19:24:09 BST 2011 x86_64 x86_64 x86_64 GNU/Linux
还有我的ss
版本:
ss --version
ss utility, iproute2-ss091226
我需要更新到 Ubuntu 机器上的版本:
ss --version
ss utility, iproute2-ss131122
如何更新版本(已尝试yum install ss
)?
答案1
ss
不在名为 的包中ss
。如果你运行:
yum provides */ss
您将看到提供该实用程序的软件包列表ss
。快速阅读本文将显示提供的包ss
是iproute
.
您可能会使用诸如http://rpmfind.net/linux/RPM/index.html搜索iptroute
并安装更高版本。
这种方法的问题是,以后的软件包将具有您在 CentOS 6 上未安装的依赖项。因此,您也需要安装这些依赖项。一段时间后,您最终会得到一个杂乱无章的系统,其中包含各种版本的实用程序和库,这些实用程序和库尚未经过彻底的相互测试,这只会给您带来很大的痛苦,尤其是当您稍后尝试时yum update
。
另一种方法是自己编译。互联网上有各种可用资源。您可以编译并安装,也可以编译并创建 RPM,然后将其安装在系统上。但是,如果您以前没有编译过,则编译将需要在系统上安装许多实用程序和库。
另一种选择是使用Copr 构建系统为您远程编译。您创建一个src.rpm
foriptables
并将其发送到copr
for 构建。创建一个src.rpm
相对容易。更简单的是,src.rpm
从其他系统(例如 CentOS 7 或 Feodra 20)编辑已创建的文件。有关信息src.rpm
可从费多拉维基,Fedora 文档和CentOS站点当然,还有谷歌。
编辑.spec
中的文件src.rpm
以反映您要安装的软件包的版本,请记住软件包的某个版本(例如iproute
)很可能需要安装其他库的某个版本。在这种情况下,您最终会遇到与rpm
从上面的 RPM Find.net 下载的情况相同的情况。但是,使用此方法可以为您提供更多的控制权。
答案2
iproute
ss由官方 RHEL rpm 存储库中的软件包提供。 Red Hat 目前提供的最新版本是 2.6.32,这就是您正在使用的版本。您可以在 git.kernel.org/pub/scm/linux/kernel/git/shemminger/iproute2.git 找到最新的源代码。有更多信息可用这里。您可能必须自己编译它。