Câu trả lời:
Để xem phiên bản cụ thể nào có sẵn cho bạn thông qua yum
bạn có thể sử dụng công --showduplicates
tắc. Nó cung cấp cho bạn một danh sách như "gói tên. Phiên bản kiến trúc":
$ yum --showduplicates list httpd | expand
Loaded plugins: fastestmirror, langpacks, refresh-packagekit
Loading mirror speeds from cached hostfile
* fedora: mirror.steadfast.net
Available Packages
httpd.x86_64 2.4.6-6.fc20 fedora
httpd.x86_64 2.4.10-1.fc20 updates
Theo như cài đặt một phiên bản cụ thể? Bạn có thể nối thông tin phiên bản vào tên của gói, xóa tên kiến trúc, như vậy:
$ sudo yum install <package name>-<version info>
Ví dụ: trong trường hợp này nếu tôi muốn cài đặt phiên bản cũ hơn, 2.4.6-6 tôi sẽ làm như sau:
$ sudo yum install httpd-2.4.6-6
Bạn cũng có thể bao gồm thông tin phát hành khi chỉ định gói. Trong trường hợp này vì tôi đang giao dịch với Fedora 20 (F20), thông tin phát hành sẽ là "fc20" và thông tin kiến trúc cũng vậy.
$ sudo yum install httpd-2.4.6-6.fc20
$ sudo yum install httpd-2.4.6-6.fc20.x86_64
Nếu bạn không chắc chắn rằng mình đang xây dựng các đối số đúng, bạn cũng có thể tham khảo ý kiến repoquery
.
$ sudo yum install yum-utils # (to get `repoquery`)
$ repoquery --show-duplicates httpd-2.4*
httpd-0:2.4.6-6.fc20.x86_64
httpd-0:2.4.10-1.fc20.x86_64
Bạn cũng có thể sử dụng một trong các tùy chọn sau để tải xuống một RPM cụ thể từ web và sau đó sử dụng yum
để cài đặt nó.
$ yum --downloadonly <package>
-or-
$ yumdownloader <package>
Và sau đó cài đặt nó như vậy:
$ sudo yum localinstall <path to rpm>
Nếu tôi muốn tải xuống mọi thứ mà gói X yêu cầu thì sao?
$ yumdownloader --resolve <package>
$ yumdownloader --resolve vim-X11
Loaded plugins: langpacks, presto, refresh-packagekit
Adding en_US to language list
--> Running transaction check
---> Package vim-X11.x86_64 2:7.3.315-1.fc14 set to be reinstalled
--> Finished Dependency Resolution
vim-X11-7.3.315-1.fc14.x86_64.rpm | 1.1 MB 00:01
Lưu ý rằng nó đang thực hiện kiểm tra phụ thuộc và sau đó tải xuống các phần còn thiếu. Xem câu trả lời của tôi bao gồm nó chi tiết hơn ở đây: Làm cách nào để tải xuống một tệp từ repo và cài đặt nó sau khi kết nối internet? .
python-libs-2.7.5-12.fc20.x86_64
đã từng được cài đặt trên máy tính của tôi nhưng đã được thay thế. Giả sử bây giờ tôi muốn cài đặt gói cụ thể này, yumdownloader python-libs-2.7.5-12*
sẽ nói No Match for argument python-libs-2.7.5-12* Nothing to download
. Những gì tôi đang cố gắng nói là một khi gói mới đến, gói cũ sẽ không còn có thể truy cập được từ yum. Bạn chỉ có thể cài đặt gói mới nhất hoặc phiên bản ban đầu, nhưng không thể có phiên bản ở giữa.
yum downgrade ...
nếu gói đã được cài đặt và bạn đang cố gắng quay lại gói đó sau. Trong QI của tôi, tôi đã cố gắng chỉ ra cách người ta sẽ chọn một phiên bản cụ thể của gói chưa được cài đặt. docs.fedoraproject.org/en-US/Fedora/14/html/ Khăn
Một tùy chọn khác, bạn có thể tải xuống rpm
tệp sau đó hướng dẫn yum
thực hiện localinstall
:
yum localinstall /path/to/package.rpm
Một nơi tốt để có được các gói bạn cần là rpmfind.com và tìm kiếm tên gói.
yum --downloadonly <package>
, theo sau yum localinstall <path to package>
, quá. Bạn cũng có thể sử dụng các tiện ích yumdownloader <package>
quá.
Bạn cũng có thể sử dụng lệnh tùy chọn:
yum install --nogpgcheck pckg-name-version
@updates
và phiên bản ban đầu cho hệ điều hành được đặt@fedora
. Ví dụ: nếu bạn cố gắng cài đặthttpd-2.4.8-1
,yum
sẽ nói gói không có sẵn.