Cài đặt phiên bản gói cụ thể với yum


18

Tôi có một hệ thống Fedora với Postgres phiên bản 8.3 và tôi muốn hạ cấp xuống 8.2 vì vấn đề tương thích. Tôi đã sử dụng yum cho mọi thứ, nhưng đây là lần đầu tiên tôi quản lý gói này và tôi không biết làm thế nào để hạ cấp mọi thứ.

Vì vậy, làm thế nào để tôi nói với nó để cung cấp cho tôi một phiên bản cụ thể của một gói?

EDIT: Tôi đã quản lý để làm việc này bằng cách tải xuống bằng cách tải xuống các gói cụ thể theo đề xuất của skymt, cộng với cài đặt khóa GPG của họ. Tất cả tôi phải làm là

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

Và như thế. Tuy nhiên, điều này khá khó hiểu và tôi vẫn hy vọng rằng có một cách dễ dàng hơn. Nếu bất cứ ai biết làm thế nào để YUM nhắm mục tiêu một phiên bản cụ thể mà không cần dùng đến điều này, xin vui lòng cho tôi biết để tôi có thể làm điều này vào lần tới.

Câu trả lời:


4

Trong Centos tôi đã làm theo các bước sau:

Trên /etc/yum.repose.d/CentOS-Base.repo.

trên các phần Cơ sở và Cập nhật, thêm các dòng tiếp theo loại trừ = postgresql * (sau đó bạn không cập nhật từ kho lưu trữ thông thường cho vòng quay postgres).

[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*

Sau đó tải xuống phiên bản mà bạn muốn. Xem 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

Bây giờ bạn có một repo khác trong /etc/yum.repose.d/ pgdg-82-centos.repo.

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

sau đó nếu bạn cài đặt postgres, centos sẽ lấy từ yum.pgsqlrpms.org/

yum install postgresql postgresql-server

19

Từ trang hướng dẫn:

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

Bạn có thể phải tự gỡ bỏ phiên bản mới hơn và sau đó cài đặt phiên bản cũ hơn.


Trang của tôi cho yum không có phần này. Ngoài ra, phiên bản yum của tôi không có lệnh "xóa" và sử dụng "xóa" thay vào đó. Cuối cùng, tôi đã thử điều này cho postgresql-8.2.10.i386 và mọi biến thể mà tôi có thể đưa ra và nó không hoạt động.
Eli Courtwright

2

Sử dụng tùy chọn nâng cấp và chỉ định số phiên bản:

yum upgrade postgresql-8.2.10

Kiểm tra danh sách phụ thuộc trước khi nhấn Y . Bạn có thể cần thêm các gói khác vào danh sách nâng cấp.


1

Nhìn nhanh vào trang người đàn ông tiết lộ không có lựa chọn như vậy. Có vẻ như họ chưa thêm điều đó; Yum vẫn là một người quản lý gói khá trẻ.

Thay vào đó, hãy tải xuống và cài đặt thủ công các RPM có liên quan .


0

Tôi đã nghe nói rằng người quản lý gói thông minh có thể làm điều này. (chưa có cơ hội để thử nó). Yum được biết là không hỗ trợ hạ cấp.

thông minh có sẵn trên fedora.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.