では、今日も授業を始める。今日のテーマはリポジトリ(レポジトリ)だ。
リポジトリ(レポジトリ)って何?
リポジトリとは、貯蔵庫という意味がある。リポジトリは、レポジトリと言われることもある。
どちらも同じ意味だ。リポジトリには、パッケージ(ソフトウェア)が置いてあり、yumコマンドでパッケージをダウンロードしてきてインストールすることができる。
例えば、CentOS標準(公式)のリポジトリから、yumコマンドでパッケージをダウンロードしてインストールすることができる。
標準(公式)リポジトリに、インストール可能なすべてのソフトウェアがあるってこと!?
ちがう。基本的なソフトウェアは標準(公式)リポジトリにあるが、
標準リポジトリに存在しないソフトウェアもある。
リポジトリって、他にもあるの?
うむ。EPEL(イーペル)リポジトリ、Remi(レミ)リポジトリなどが有名だ。
RepoForge(旧RPMForge)リポジトリというリポジトリもあったが、メンテナンス終了しているから利用してはいけない。
標準リポジトリ以外のものは、サードパーティ製のリポジトリといったりする。
EPELやRemiなどがサードパーティ製リポジトリだ。
サードパーティ製リポジトリって、Red Hat社のサポート対象外になっちゃうから、自己責任で利用できるってことでしょ。
うむ。EPELは、Extra Packages for Enterprise Linuxの略で、
Red Hat Enterprise Linux(RHEL)向けの追加パッケージを提供するリポジトリだ。
EPELはとても人気のあるリポジトリだ。Fedoraプロジェクトによって提供されている。
RHELなら、EPELリポジトリが利用できるのね。
RHELも利用できるが、RHELベースのCentOSやScientific Linuxも、EPELリポジトリを利用できる。
Fedora(フェドラ)は積極的に先進的で実験的な新しい技術を取り入れているLinuxディストリビューションだ。
Redhat社がFedoraを支援している。Fedoraで検証や動作確認して、問題のない品質のパッケージがRHELに取り入れられている。
Fedoraは新しいパッケージが利用できるようになってるのね。
うむ。Fedoraで利用されたパッケージがすべてRHELのパッケージになるわけではない。
Fedoraのバージョンは、Fedora 31が2019年11月5日にリリースされた。
EPELリポジトリをyumコマンドでインストールすれば、EPELにあるパッケージをインストールできるようになる。
# yum install epel-release
EPELリポジトリの追加は、CentOS標準(公式)のリポジトリからインストールできるのね。
次に、EPELリポジトリからパッケージをインストールするのは、標準リポジトリにパッケージがない場合や、
EPELリポジトリの方がパッケージのバージョンが新しくて、新しいバージョンのパッケージをインストールしたい場合だけにした方がよい。
基本は、標準の公式リポジトリを利用した方がよいってことね。
うむ。EPELにあるパッケージを導入すると、そのパッケージはRed Hat社のサポート対象外になる。
yum install epel-releaseすると、yumコマンドを実行するときにEPELリポジトリを自動的に利用する設定(デフォルト設定:enabled=1)になっている。
そこで、以下の設定を行い、自動的にEPELリポジトリを利用しないように設定しておくと良い。
# vi /etc/yum.repos.d/epel.repo
→enabled=0に変更する。
epel.repoは、EPELリポジトリの設定ファイルだ。
enabled=0にすることで、yumコマンドを投入しても、標準リポジトリにしかパッケージを取りにいかなくなる。
EPELからパッケージを取りたい場合だけ、--enablerepo=epelを付けて、実行すればよい。
# yum --enablerepo=epel install【パッケージ名】
EPELのリポジトリから初めてyumコマンドでパッケージをインストールするときに
GPG署名の警告が表示されるが、これはyを入力して進む。
これはGPG署名を利用してパッケージ検証をしようとしたときに、キー(GPGの公開鍵)がないため、キーをインポートしてよいか確認の
警告が表示されているため、yでインポートすればよい。
キーはリポジトリごとに必要となる。キーの一覧は以下のコマンドで確認することができる。
# rpm -qa gpg-pubkey*
# rpm -qai gpg-pubkey*
※-q:PRMパッケージの検索
-a:インストールされている全パッケージ
-i:詳細を表示できる
enabled=1だとそのリポジトリが自動的に利用され、enabled=0の場合、無効になるってことね。
以下のコマンドで、追加したリポジトリが利用できるかどうかを確認することができる。
# yum repolist all
では、今日はここまで。
は~い
1.リポジトリとは貯蔵庫
2.リポジトリはレポジトリともいう
3.RepoForgeリポジトリは更新終了(利用しない)
4.EPELリポジトリはFedoraプロジェクトより提供
5.RHEL、CentOS、Scientific LinuxはEPELを利用できる
6.2019年11月5日にFedora 31リリース
CentOSの標準リポジトリ
Remi
EPEL
など。
7. EPELリポジトリインストール→パッケージインストール
# yum install epel-release
# vi /etc/yum.repos.d/epel.repo
→enabled=0に変更
# yum --enablerepo=epel install【パッケージ名】
8.GPGの公開鍵(キー)は以下で確認できる
# rpm -qa gpg-pubkey*
# rpm -qai gpg-pubkey*
9.リポジトリの確認
# yum repolist all