
yumとelrepoの使用に大きな問題があります。最初から始めます。 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
ご覧のとおり、リポジトリの最後の2つのパッケージは認識されますが、他のすべてのパッケージは存在しません。 Repoの内容を確認しました(リンク経由)http://www.ftp.ne.jp/Linux/RPMS/elrepo/kernel/el7/x86_64/RPMS/)そして私が探しているkernel-mlを含むいくつかのパッケージがあります。また、リスト内の他の2つのリポジトリも試しました(https://elrepo.org/tiki/ダウンロード)、しかし結果は常に同じです。 elrepo-kernelリポジトリでは、最後の2つのパッケージのみを使用できます。ところが他のエレポブランチも美味しそうですね。
話が進むにつれて、rpmから直接kernel-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
そのカーネルを使用して再起動することもできますが、カーネル関連パッケージ(kernel-headers、kernel-tools、kernel-tools-libs、kernel-devel)を置き換える必要があります。問題は、これらのパッケージがelrepo-kernelにあり、それにアクセスできないことです。経験が足りないので、手作業で作業するのは少し怖いです。なしでこれを行う方法yum swap
やローカルrpmパッケージを使用する方法がわかりませんyum swap
(elrepo-kernelからすべてダウンロードしました)。
興味深いことに、私はcreaterepoを使用して、特定のディレクトリに.rpmファイルを含む独自のローカルリポジトリを作成してみました。 /etc/yum.repos.d/に.repoファイルを作成し、そのリポジトリをyumに追加すると、repolistに奇妙に見えるものが表示されます。
$ yum repolist
...
repo id repo name status
...
!my-kernel2 Downloaded kernel rpms 2+7
(2+7)が何を意味するのか知りたいです。利用可能なパッケージを表示するには、次の 2 つが存在するためです。
$ 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
my-kernel2リポジトリのRPMSフォルダには次のものがあります。
$ 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
だから私は完全に迷子になった。基本的に2つの質問をすることができます。
- ローカルの.rpmファイルにyumスワップを使用できますか?
- リポジトリにあるがyumには表示されないパッケージの謎は何ですか? ? ?
編集する
GracefulRestartのコメントと回答のおかげで、yum.configから除外されたパッケージが見つかりました。
除外=カーネル* centos* ibutils-libs*
私はその行が構成にどのように現れるのか(世界で)全くわかりませんが、それがなければyumは私が必要とするすべてを見ることができます。
答え1
YUMリポジトリの2つの簡単な説明と2つの主な質問に答えてみましょう。
ローカルストアにさらにパッケージが追加されるたびに、ローカルストアを更新する必要があります。
また、/etc/yum.conf
除外されたパッケージがあることを確認してください。
実際の質問は次のとおりです。
YUMはすべてのローカルRPMファイルを使用できる必要があります。正しいパス(例:yum install ./RPMS/kernel-ml-*.rpm
。
私はゴーストパッケージとあなたの秘密の2+7
状態を除外したパッケージに関連していると思います(例:YUMはあなたに表示された2つのパッケージを見つけ、あなたのクエリと一致しますが、何らかの理由で外部から除外された7つの隠しパッケージがありました) )。