yumを使用して特定のパッケージバージョンをインストールする


18

Postgresバージョン8.3のFedoraシステムを使用していますが、互換性の問題のために8.2にダウングレードしたいと思います。私はすべてにyumを使用していますが、このパッケージマネージャーを使うのは初めてであり、ダウングレードする方法がわかりません。

それでは、パッケージの特定のバージョンを提供するように指示するにはどうすればよいですか?

編集:skymtの提案に従って特定のパッケージをダウンロードし、GPGキーをインストールすることで、これを機能させることができました。私がしなければならなかったのは

rpm --import RPM-GPG-KEY-PGDG
yum localinstall postgresql-8.2.10-1PGDG.f9.i386.rpm
yum localinstall .....

等々。しかし、これはかなり不格好で、私はまだ簡単な方法があることを望んでいます。これに頼らずにYUMが特定のバージョンをターゲットにする方法を知っている人がいたら、次回にこれができるようにお知らせください。

回答:


4

Centosでは、次の手順を実行しました。

/etc/yum.repos.d/CentOS-Base.repoにあります。

BaseおよびUpdateセクションで、次の行exclude = postgresql *を追加します(その後、postgres rpmの通常のリポジトリから更新しないでください)。

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postgresql*

#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postgresql*

次に、必要なバージョンをダウンロードします。http://yum.pgrpms.org/howtoyum.phpを参照してください

wget http://yum.pgrpms.org/reporpms/8.3/pgdg-centos-8.3-6.noarch.rpm
rpm -ivh pgdg-centos-8.3-6.noarch.rpm

/etc/yum.repos.d/ pgdg-82-centos.repoに別のリポジトリがあります。

ls /etc/yum.repos.d/
CentOS-Base.repo  CentOS-Media.repo  pgdg-82-centos.repo

その後、postgresをインストールすると、centosはyum.pgsqlrpms.org/から取得します

yum install postgresql postgresql-server

19

マンページから:

MISC

  Specifying package names

         A package can be referred to for install,update,list,remove  etc
         with any of the following:

          name
          name.arch
          name-ver
          name-ver-rel
          name-ver-rel.arch
          name-epoch:ver-rel.arch
          epoch:name-ver-rel.arch

          For example: yum remove kernel-2.4.1-10.i686

新しいバージョンを手動で削除してから、古いバージョンをインストールする必要がある場合があります。


yumの私のマンページにはこのセクションがありません。また、私のバージョンのyumには「remove」コマンドがなく、代わりに「erase」が使用されます。最後に、postgresql-8.2.10.i386とこれを思い付くことができるすべてのバリエーションでこれを試しましたが、うまくいきませんでした。
イーライコートライト

2

アップグレードオプションを使用して、バージョン番号を指定します。

yum upgrade postgresql-8.2.10

Yを押す前に依存関係リストを確認してください。アップグレードリストに他のパッケージを追加する必要がある場合があります。


1

manページをざっと見てみると、そのようなオプションはありませんでした。彼らはまだそれを追加していないようです。Yumはまだかなり若いパッケージマネージャーです。

代わりに、関連するRPMをダウンロードして手動でインストールします


0

スマートパッケージマネージャーがこれを行うことができると聞きました。(まだ試してみる機会がありませんでした)。Yumはダウングレードをサポートしないことが知られています。

スマートはfedoraで利用可能です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.