CentOS および Ubuntu に特定のパッケージ バージョンをインストールする方法
通常、CentOS と Ubuntu にパッケージをインストールすると、パッケージ管理ソフトウェアはデフォルトでリポジトリから最新のパッケージ バージョンを選択します。ただし、何らかの理由で、特定のパッケージ バージョンを Linux システムにインストールする必要がある場合があります。
この記事では、Yum と APT フロントエンド パッケージ マネージャーをそれぞれ使用して、CentOS と Ubuntu に特定のパッケージ バージョンをインストールする方法を説明します。
CentOS/RHEL/Fedora に特定のパッケージ バージョンをインストールする
まず、インストールされているかどうかにかかわらず、パッケージの利用可能なすべてのバージョンを確認する必要があります。通常、yum はパッケージの特定のバージョンを無視し、常に利用可能な最新バージョンをインストールしようとします。
次に、パッケージに関する情報を検索しようとすると、yum は info、list、または search サブコマンドの出力にそのパッケージの最新バージョンのみを表示します。ただし、 --showduplicates
スイッチを使用すると、リポジトリに存在するすべてのパッケージ バージョンを表示できます。
yum --showduplicates list nginx
上記のコマンド出力から、パッケージの命名形式は次のようになります。
package_name.architecture version_number–build_number repository
build_number は、追加のドキュメント、構成ファイルの変更、バグ修正など、プログラムの作成者ではなくパッケージの管理者によって行われたマイナーな変更を表します。
パッケージの特定のバージョン (nginx-1.10.3-1.el7.ngx など) を特定したら、次のようにインストールします。次のコマンドに示すように、ここで名前の形式を目的の完全な RPM、package_name-version_number に変更する必要があることに注意してください。
yum install nginx-1.10.3
あるいは、特定の更新が含まれたバージョンを使用する場合は、示されているようにビルド番号 (パッケージ名-バージョン番号-ビルド番号) を指定します。
yum install nginx-1.10.3-1.el7.ngx
上記の状況を考慮すると、新しいバージョンのパッケージがシステムにすでにインストールされています。したがって、示されているように、利用可能なパッケージから古いバージョンをインストールする場合は、インストールされているパッケージのバージョンを削除する必要があります。
yum remove nginx
インストールされたパッケージを削除したら、上で説明したように、必要な特定のバージョンをインストールできます。
Ubuntu および Debian に特定のパッケージ バージョンをインストールする
まず、以下の apt-cache コマンドを使用して、システムにインストールされているパッケージのバージョンとリポジトリ内のすべての利用可能なパッケージを確認します。
apt-cache policy firefox
特定のパッケージ バージョンをインストールするには、次の構文で次のコマンドを使用します。
sudo apt install firefox=45.0.2+build1-0ubuntu1
新しいバージョンのパッケージがすでに Ubuntu システムにインストールされている場合は、それを削除して、必要なバージョンをインストールできます。
sudo apt remove firefox
sudo apt install firefox=45.0.2+build1-0ubuntu1
それだけです!詳細については、yum、apt、apt-cache のマニュアル ページを参照してください。ご質問がある場合は、以下のコメント フォームを使用してご連絡ください。