我对百胜和埃勒波有很大的问题。让我从头开始。有一个带有CentOS 7的本地机器:
$ uname -a
Linux vt001.localdomain 3.10.0-327.36.3.el7.xppsl_1.4.3.3482.x86_64 #1 SMP Fri Nov 18 10:03:11 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux我想将内核更新为当前版本(现在是4.18.8)。为了做到这一点,我遵循了https://server.etutsplus.com/centos-7-how-to-update-kernel-to-the-latest-mainline-stable/的指示(对不起,它是日语的,但是google翻译工作很好,我找到了到目前为止最详细的说明)。
主要问题是在安装elrepo之后,yum没有看到与内核相关的包:
$ yum list available --disablerepo='*' --enablerepo=elrepo-kernel
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* elrepo-kernel: ftp.ne.jp
Available Packages
perf.x86_64 4.18.9-1.el7.elrepo elrepo-kernel
python-perf.x86_64 4.18.9-1.el7.elrepo elrepo-kernel 可以看到,回购的最后两个包是被识别的,但是所有其他包都没有。我检查了非常回购的内容(通过链接http://www.ftp.ne.jp/Linux/RPMS/elrepo/kernel/el7/x86_64/RPMS/),它有一堆包,包括内核-ml,我正在寻找。另外,我尝试了列表(https://elrepo.org/tiki/Download)中的另外两个repos,但是结果总是一样的:只有两个最后的包可以从elrepo内核存储库中获得。顺便说一句,其他的elrepo brunches似乎被正确地看到了。
正如故事所述,我决定直接从rpm安装内核-ml。这是成功的:
$ yum info kernel-ml
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: ftp.jaist.ac.jp
* elrepo: ftp.ne.jp
* extras: ftp.jaist.ac.jp
* updates: ftp.jaist.ac.jp
Installed Packages
Name : kernel-ml
Arch : x86_64
Version : 4.18.8
Release : 1.el7.elrepo
Size : 203 M
Repo : installed 我甚至可以用这个内核重新启动,但是我需要交换与内核相关的包:内核头、内核工具、内核工具库和内核开发。问题是,这些包再次出现在elrepo内核中,而我无法访问它们。在这里,由于缺乏经验,我有点害怕手工操作。我不知道如何在没有yum swap的情况下做到这一点,或者如何在本地rpm包中使用yum swap (我已经从elrepo内核下载了所有这些包)。
有趣的是,我甚至尝试用createrepo创建自己的本地回购,在特定的目录中包含.rpm文件。当我在/etc/yum.pos.d/中编写.repo文件并将该回购添加到yum中时,它在repolist中对我来说有些奇怪的地方:
$ yum repolist
...
repo id repo name status
...
!my-kernel2 Downloaded kernel rpms 2+7 我想知道(2+7)是什么意思?因为同样,如果我想查看可用的包,则只有两个包存在:
$ yum list available --disablerepo='*' —enablerepo=my-kernel2
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Error: No matching Packages to list 或
$ sudo yum repo-pkgs my-kernel2 list
...
Available Packages
perf.x86_64 4.18.8-1.el7.elrepo my-kernel2
python-perf.x86_64 4.18.8-1.el7.elrepo my-kernel2 当我在我的-kernel2 2 repo中的RPMS forlder中有这个的时候:
$ ls -l RPMS/
total 69776
-rw-r--r-- 1 ivan ivan 46M Sep 25 12:22 kernel-ml-4.18.8-1.el7.elrepo.x86_64.rpm
-rw-r--r-- 1 ivan ivan 12M Sep 25 12:22 kernel-ml-devel-4.18.8-1.el7.elrepo.x86_64.rpm
-rw-r--r-- 1 ivan ivan 7.4M Sep 25 12:22 kernel-ml-doc-4.18.8-1.el7.elrepo.noarch.rpm
-rw-r--r-- 1 ivan ivan 1.3M Sep 25 12:22 kernel-ml-headers-4.18.8-1.el7.elrepo.x86_64.rpm
-rw-r--r-- 1 ivan ivan 164K Sep 25 12:22 kernel-ml-tools-4.18.8-1.el7.elrepo.x86_64.rpm
-rw-r--r-- 1 ivan ivan 66K Sep 25 12:22 kernel-ml-tools-libs-4.18.8-1.el7.elrepo.x86_64.rpm
-rw-r--r-- 1 ivan ivan 47K Sep 25 12:22 kernel-ml-tools-libs-devel-4.18.8-1.el7.elrepo.x86_64.rpm
-rw-r--r-- 1 ivan ivan 1.9M Sep 25 12:22 perf-4.18.8-1.el7.elrepo.x86_64.rpm
-rw-r--r-- 1 ivan ivan 481K Sep 25 12:22 python-perf-4.18.8-1.el7.elrepo.x86_64.rpm 所以,我完全迷路了。基本上,我可以提出两个问题:
<#>编辑
由于GracefulRestart的评论和回答,我在yum.config中找到了排除在外的包:
exclude=kernel* centos* ibutils-libs*
我不知道(在地球上)这一行是如何出现在配置中的,但是没有它,百胜就能看到我所需要的一切。
发布于 2018-09-26 20:01:11
两个关于百胜宝库的快速评论,然后我将尝试回答你的两个主要问题:
当您向本地存储库添加更多包时,请确保更新它。
此外,检查您的/etc/yum.conf,看看您是否排除了任何包。
至于你的实际问题:
YUM应该能够处理任何本地RPM文件,只需确保您使用正确的路径(即yum install ./RPMS/kernel-ml-*.rpm)。
我相信幻影包的神秘之处以及您神秘的2+7状态与被排除的包有关(即百胜发现了它向您显示的两个包,并且有七个隐藏包与您的查询相匹配,但由于任何原因被排除在外)。
https://unix.stackexchange.com/questions/471501
复制相似问题