Bagaimana cara menginstal paket dengan yum tanpa memperbarui informasi repositori?


10

Saya ingin menginstal beberapa paket dari repositori tetapi selalu ketika saya mencoba untuk yum install packagenamememperbarui yum db:

Loaded plugins: fastestmirror, langpacks, presto, refresh-packagekit
Determining fastest mirrors
updates/metalink                                                                                                                      |  23 kB     00:00     
 * fedora: nl.mirror.eurid.eu
 * rpmfusion-free: ftp.astral.ro
 * rpmfusion-free-updates: ftp.astral.ro
 * rpmfusion-nonfree: ftp.astral.ro
 * rpmfusion-nonfree-updates: ftp.astral.ro
 * updates: nl.mirror.eurid.eu
fedora-awesome                                                                                                                    | 3.3 kB     00:00     
google-chrome                                                                                                                     |  951 B     00:00     
rpmfusion-free-updates                                                                                                        | 3.3 kB     00:00     
rpmfusion-free-updates/primary_db                                                                                             | 272 kB     00:08     
rpmfusion-nonfree-updates                                                                                                     | 3.3 kB     00:00     
rpmfusion-nonfree-updates/primary_db                                                                                          |  93 kB     00:05     
updates                                                                                                                       | 4.7 kB     00:00     
updates/primary_db                                                                                                            | 4.6 MB     02:35     
updates/group                                                                                                                     | 1.9 MB     00:33     

Jadi menggunakan yum install packagename -Cjuga tidak berfungsi ("cache tidak ditemukan" kesalahan terjadi dan yum makecachetidak memberikan hasil juga). Tapi saya hanya ingin menginstal paket tanpa memperbarui db.


3
Mengapa? Memperbarui DB berarti Anda memiliki versi terbaru dari daftar paket
Smudge

Apa yang kita bicarakan? Cache yum repo / paket?
thinice

1
@sam karena kecepatan internet saya terlalu lambat untuk memperbarui repo untuk setiap instalasi.
Clark

1
@ terima kasih ya seperti yang Anda lihat di log ada pembaruan yang terjadi untuk repositori. Saya tidak perlu melakukannya, saya hanya ingin menginstal paket tanpa memperbarui repositori.
Clark

1
@purple Maka Anda harus menggunakan repositori lokal, yum dirancang untuk bekerja dengan akses penuh ke data repo, baik itu remote atau yum lokal tidak peduli tetapi harus memilikinya.
Smudge

Jawaban:


12

Jika Anda ingin yumberperilaku seperti apt-get(tidak memperbarui metadata setiap kali berjalan), edit /etc/yum.confdan letakkan di sana:

metadata_expire=never

atau

metadata_expire=7d

jika Anda ingin memperbarui metadata setelah seminggu. Jika Anda menjalankan yum makecache, metadata Anda akan diperbarui seperti oleh apt-get updatedi Debian.

Tetapi perlu diingat bahwa jika Anda menggunakan "tidak pernah" dalam file konfigurasi, Anda harus peduli secara manual. Jika Anda menggunakan "7d", Anda akan menghemat bandwidth data Anda, tetapi setelah seminggu, metadata akan diperbarui untuk Anda secara otomatis.

Berikut metadata_expiredokumentasinya:

Anda juga dapat mengubah dari default menggunakan detik menjadi menggunakan hari, jam atau menit dengan menambahkan iklan, h atau m masing-masing. Standarnya adalah 6 jam, untuk memuji yum-pembaruand berjalan satu jam sekali. Dimungkinkan juga untuk menggunakan kata "tidak pernah", yang berarti bahwa metadata tidak akan pernah kedaluwarsa.


akan 2wbekerja juga?
Sebastian Godelet

Tidak 2wtidak bekerja Standarnya adalah 6 jam, untuk memuji yum-pembaruand berjalan satu jam sekali. Anda dapat mengubah dari default menggunakan detik ke menggunakan hari, jam atau menit dengan menambahkan a d, h or mmasing-masing.
Shubham Chaudhary

4

Apa yang Anda minta keluar dari semangat yum dalam beberapa hal. Yum adalah manajer paket dan dependensi yang komprehensif . Untuk melakukan tugasnya dan tidak mengacaukan sistem Anda dengan paket campuran dan pencocokan yang tidak cocok, ia harus memiliki data yang tidak ingin Anda perbarui.

Anda dapat secara manual menganalisis dependensi apa yang dimiliki paket dengan menggunakan deplist <packagename>dan menginstalnya secara manual.

Tidak memiliki yum memiliki informasi terbaru sepertinya permintaan aneh apa pun kondisinya ...


Tetapi mengapa apt-get tidak memperbarui repositori saat Anda mengetik perintah install? Ini akan memperbarui hanya repositori dan hanya ketika Anda mengetik pembaruan. Saya ingin yum melakukan hal yang sama.
Clark

1
Jika Anda menjalankan apt-get install foo - dan versi paket jauh telah berubah, Anda akan mendapatkan pesan seperti ini: bitbucket.org/ianb/silverlining/issue/26/… - Demikian juga dengan setiap dependensi yang telah diperbarui dalam repo demikian juga. (Intinya, memaksa Anda untuk menjalankan pembaruan).
thinice

2
Ya tetapi ketika saya menjalankan yum untuk menginstal aplikasi yang belum diubah, pembaruan juga db.
Clark

4

Jika Anda ingin menginstal paket tanpa memperbarui db, Anda mengunduh rpm secara langsung (baik melalui yumdownloader, ftp atau browser web) dan kemudian menginstalnya dengan rpm langsung:

rpm -ivh packagename

Saya tidak menyarankan Anda melakukan ini, karena jauh lebih banyak pekerjaan untuk melacak dependensi (itu sebabnya yum dibuat) dan itu dapat merusak instalasi di masa depan melalui yum.


Ya tapi mengapa apt-get misalnya tidak memperbarui repositori ketika Anda baru saja menyuruhnya menginstal paket? Dan untuk memperbarui Anda menggunakan perintah 'apt-get update'.
Clark
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.