是否有来自 Tumbleweed 存储库的较旧 Linux 内核的存档?
Posted
技术标签:
【中文标题】是否有来自 Tumbleweed 存储库的较旧 Linux 内核的存档?【英文标题】:Is there an archive of older Linux kernels from the tumbleweed repo? 【发布时间】:2017-04-10 12:57:45 【问题描述】:我需要缩小在风滚草内核中引入更改的内核版本。 4.4 和 4.10 之间的任何内核都会有用。
这些内核的存档是否保存在某个地方?
如果可能的话,我宁愿避免从源代码构建。
【问题讨论】:
【参考方案1】:要查看已启用的存储库中的所有可用内核,您可以运行以下命令:
zypper se -s kernel-default
我的一些输出是这样的,例如:
S | Name | Type | Version | Arch |
Repository
--+----------------------+------------+---------------+--------+---------
--------------
i | kernel-default | package | 4.4.57-18.3.1 | x86_64 | Main Update Repository
v | kernel-default | package | 4.4.49-16.1 | x86_64 | Main Update Repository
v | kernel-default | package | 4.4.46-11.1 | x86_64 | Main Update Repository
i | kernel-default | package | 4.4.36-8.1 | x86_64 | Main Update Repository
v | kernel-default | package | 4.4.36-5.1 | x86_64 | Main Update Repository
v | kernel-default | package | 4.4.27-2.1 | x86_64 | Main Repository (OSS)
之后,这取决于您是只需要该软件包还是要将其安装到您的系统中。要将其安装到您的系统,请运行如下命令:
zypper in --oldpackage kernel-default-<version number>
如果你只是想下载 rpm,你可以这样运行它:
zypper in --download-only --oldpackage kernel-default-<version number>
它将rpm包下载到/var/cache/zypp/packages/
目录。从那里它按存储库划分。您可以在前面的输出中看到最后一列说明它来自哪个存储库。您可以使用它来帮助您确定要搜索包的目录。
上面只提供了常规的 kernel-default 和 kernel-default-base 包。如果您想获取带有源代码的软件包,您必须确保您的调试存储库已启用。
例如,在我的 SUSE Leap 42.2 上,我使用 zypper lr
来查看 openSUSE-Leap-42.2-Debug
和 openSUSE-Leap-42.2-Update-Debug
存储库编号为 13 和 15。所以我运行这些命令来启用并刷新它们:
zypper mr -e 13 15
zypper ref -s
在那之后,我之前提供的zypper se -s kernel-default
命令还将包括kernel-default-debuginfo
包以及kernel-default-debugsource
包。然后您可以使用与之前相同的命令下载源代码包:
zypper in --download-only --oldpackage kernel-default-debugsource-<version-number>
然后,您将检查包的 /var/cache/zypp/packages/
目录中的相应存储库目录。就我而言,它位于以下位置:
/var/cache/zypp/packages/repo-debug/suse/x86_64/kernel-default-debugsource-4.4.27-2.1.x86_64.rpm
【讨论】:
以上是关于是否有来自 Tumbleweed 存储库的较旧 Linux 内核的存档?的主要内容,如果未能解决你的问题,请参考以下文章