CentOS / RHELにリポジトリをインストールして設定する方法は?
標準の(公式の)RHEL / CentOSリポジトリは、常に最新バージョンのプログラムを含むとは限らない少数の基本パッケージを提供します。ただし、サードパーティのパブリックまたはプライベートリポジトリを使用して、Red Hat Enterprise Linux、CentOS、Oracle Linux、およびScientificLinuxに新しいプログラムをインストールできます。 RemiとEPELは、最も人気のあるサードパーティのリポジトリです。この記事では、CentOSのyum(dnf)パッケージマネージャーを使用して追加のリポジトリをインストール、管理、および使用する方法について説明します。
リポジトリは、Linux用のRPMソフトウェアパッケージの更新可能なストアです。さまざまなパッケージマネージャーがネットワークリポジトリを使用してプログラムをインストールおよび更新する場合があります。
OS(この例ではCentOS 7)をインストールすると、基本的なリポジトリがデフォルトでインストールされます。次のコマンドを使用して、それらのリストを表示できます:
yum repolist
スクリーンショットでわかるように、システムには3つのリポジトリがインストールされています—ベース 、エクストラ 、更新 。これらは、基本的なソフトウェアと追加のリポジトリのインストールを開始するのに十分です。
CentOSに追加のリポジトリをインストールする方法を考えてみましょう。
EPELは今日最も人気のあるリポジトリかもしれません。
EPEL(Enterprise Linux用の追加パッケージ) は、Fedoraチームが提供するオープンで無料のリポジトリプロジェクトです。 Linuxディストリビューション用の追加ソフトウェアの高品質パッケージが含まれています。このリポジトリは、FTPサーバーからPHPおよびシステム監視ツールまでの多数のパッケージをホストします。これは最も人気のあるリポジトリです。 EPELパッケージはネイティブのCentOS/RHELパッケージと競合せず、それらを置き換えないことに注意してください。RPMパッケージを使用して(CentOS 6とは異なり)CentOS 7にEPELをインストールするのは非常に簡単です(新しいリポジトリを追加するのが最も簡単な方法です):
yum install epel-release
インストール後、リポジトリはアクションなしでリポジトリリストに表示されます(yumキャッシュをクリアする必要はありません)。
CentOSにRemiリポジトリをインストールするには、次のコマンドを実行します。
rpm -ivh https://rpms.famillecollet.com/enterprise/remi-release-7.rpm
必要なリポジトリのRPMパッケージがない場合は、構成ファイル .repoを作成して追加できます。 /etc/yum.repos.dにあります 手動で(次の記事のセクションを参照してください)。
パッケージがどのリポジトリからインストールされているかを理解するために、パッケージの完全なリストを表示できます。
yum list installed
ご覧のとおり、すべてのパッケージには、インストール元のリポジトリに関する情報が含まれています(下のスクリーンショットには、base、update、epel、anacondaリポジトリがあります)。
特定のリポジトリにインストールできるパッケージのリストを表示できます:
yum repo-pkgs epel list
リポジトリ構成ファイル(* .repo)
すべてのリポジトリー構成ファイルは/etc/yum.repos.d/にあります *。repoがあります 拡大。一般的な構成ファイルには、次のパラメーターが含まれています。
- 名前 —リポジトリ名
- baseurl —リポジトリへのリンク(ローカルリポジトリの場合はftp:// address、http:// address、https:// address、file:// addressの場合があります)
- 有効 –このリポジトリを使用する必要があるかどうか:1 —リポジトリが有効、0 —リポジトリが無効です。
- 非同期 –パッケージの並列ダウンロード(自動/オン/オフ)を使用するかどうか
- gpgcheck – GPGチェックを実行するかどうか(1 —チェックはオンです)
- gpgkey —GPGキーへのリンク
- 除外 —除外されたパッケージのリスト
- includepkgs —含まれているパッケージのリスト
- ミラーリスト –リポジトリミラーのリスト
最小のリポジトリファイルは次のようになります:
[rep_name] name=rep_name baseurl=rep_url
たとえば、REMIリポジトリをインストールすると、いくつかのRemi(remi-*。repo)構成ファイルがリポジトリディレクトリに表示されます。
ご覧のとおり、RemiにはPHPバージョンごとに個別の構成ファイルがあります。構成ファイルを使用して、必要なPHPバージョンを有効にする必要があります。たとえば、サーバーにPHP 7.3をインストールするので、対応するリポジトリを有効にしました(enabled=1
を指定しました) remi-php73.repo
で ):
リポジトリを手動で接続できます。これを行うには、/ etc /yum.repos.d/にリポジトリー構成ファイルを作成します。 MariaDBリポジトリを追加しましょう。
nano /etc/yum.repos.d/mariadb.repo
MariaDBパッケージ開発者から提供されたデータを追加します:
[mariadb] name = MariaDB baseurl = https://yum.mariadb.org/10.4/centos73-amd64/ gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1>
インストールされているリポジトリの1つを無効にするには、 enabled =0を指定するだけで十分です。 構成ファイル内。
次に、yumキャッシュをクリーンアップします:
yum clean all
そしてそれを再作成します:
yum makecache
その後、パッケージをインストールまたは更新するときにremi-php73リポジトリは使用されなくなります。
現在のパッケージの更新/インストールコマンドにのみリポジトリを使用したくない場合は、yumコマンドで無効にできます(例:
)。
yum update —disablerepo=epel
この例では、EPELを無効にし、インストールされているパッケージを更新しています。
不要なすべてのリポジトリを一時的に無効にすることができます。たとえば、MariaDBリポジトリからのみパッケージを更新するには、次のコマンドを実行します。
yum update --disablerepo "*" --enablerepo=mariadb
リポジトリを無効化または削除するには、 yum-config-manager yum-utilsツールに属するものが使用されます。
yum-utilsをインストールします:
yum -y install yum-utils
remi:
などのリポジトリを無効にします
yum-config-manager --disable remi
リポジトリを完全に削除するには、その構成ファイルを削除し、yumキャッシュを更新する必要があります。
利用可能なパッケージアップデートについてリポジトリを確認する方法は?
特定のリポジトリで利用可能なパッケージアップデートを確認できます。
yum check-update --disablerepo "*" --enablerepo=mariadb
したがって、サーバー上の接続されたリポジトリを管理できます。異なるリポジトリに同じパッケージが含まれている可能性があり、更新中にバージョンの競合が発生する可能性があることに注意してください。したがって、使用しているリポジトリのみを有効のままにしておきます。
CentOSおよびRHELで人気のあるサードパーティリポジトリ
MariaDB 名前から推測できるように、リポジトリにはMariaDBパッケージが含まれています。リポジトリはMariaDB開発者によって作成されており、常にサポートおよび更新されています。
このリポジトリをシステムにインストールするには、次の内容の.repoファイルを作成します。
[mariadb] name = MariaDB baseurl = https://yum.mariadb.org/10.4/centos73-amd64/ gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1>
以前のリポジトリと同様に、 Nginx nginxHTTPDサーバーに関連するパッケージが含まれています。
nginxリポジトリをインストールするには、.repoファイルを作成し、ここに次のテキストを追加します。
[nginx-stable] name=nginx stable repo baseurl=https://nginx.org/packages/CentOS/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key
このリポジトリのリストは、nginxをフロントエンドサーバーとして使用して、いわゆるLAMPスタックを構成するのに十分です。
このリポジトリリストはほとんどすべてのユーザーにとって十分かもしれませんが、さらにいくつかの例を示します。
Webtatic 限られた数の専門家によってサポートされており、ほとんどがAndyThompsonです。 PHP関連のパッケージが含まれていますが、この記事の執筆時点でこのリポジトリの最新のPHPバージョンは7.2であったため、Remiほど人気がありません。
yum repo-pkgs webtatic list | grep php7
mod_php71w.x86_64 7.1.31-1.w7 webtatic mod_php72w.x86_64 7.2.21-1.w7 webtatic ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ php72w-tidy.x86_64 7.2.21-1.w7 webtatic php72w-xml.x86_64 7.2.21-1.w7 webtatic php72w-xmlrpc.x86_64 7.2.21-1.w7 webtatic
リポジトリを有効にするには、次のRPMパッケージをインストールします。
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
MySQL 私が思い出させたいことです。データベースサーバーとしてのMySQLはその位置を失ったと思うので、私はそれを人気のあるものと一緒に配置していません。 MariaDBは通常、代わりにサーバーにインストールされます。ただし、誰かがMySQLをインストールしたい場合は、このリポジトリを有効にすることができます。たとえば、mysql 5.7をインストールするとします:
パッケージをダウンロードする:
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
そしてそれをインストールします:
rpm -Uvh mysql57-community-release-el7-9.noarch.rpm
インストール後、MySQLをインストールできます:
この記事では、CentOSでのリポジトリ管理のいくつかの側面を示し、いくつかの有用なリポジトリを研究しました。
-
コンピューターにCentOSをインストールする方法
CentOSは主にサーバーで使用されますが、デスクトップでも使用できます。このチュートリアルでは、CentOSをデスクトップにインストールする方法を説明します。 始める前に 開始するには、プロジェクトのWebサイトでCentOS ISOファイルをダウンロードし、起動可能なUSBを作成する必要があります。このチュートリアルでは、CentOS8.2の新しい最小ISOを使用しています。 注 :CentOSインストーラーのすべてについて、オプションを確認し、左上隅にある[完了]をクリックします。いつもそこにあるので、どこに行けばいいかわかります。奇妙な配置です。 起動可能なUSBの作成が完了
-
CentOS/RHELでBashオートコンプリートをインストールして有効にする方法
バッシュ (ボーンアゲインシェル )は間違いなく最も人気のあるLinuxシェルであり、多くのLinuxディストリビューションのデフォルトシェルであることは不思議ではありません。その最も魅力的な機能の1つは、組み込みの「オートコンプリート」です。 」サポート。 TABと呼ばれることもあります 完了、この機能を使用すると、コマンド構造を簡単に完了することができます。コマンドの一部を入力してから、[タブ]を押すことができます。 コマンドとその引数をオートコンプリートするためのキー。可能な場合は、複数の完了がすべて一覧表示されます。 バッシュと同じように 、ほぼすべての最新のLinuxシェルには