Apa yang setara dengan 'pembaruan apt-get'?

86

Debian apt-get updatemengambil dan memperbarui indeks paket. Karena saya sudah terbiasa dengan cara melakukan hal-hal ini, saya terkejut menemukan bahwa yum updatemelakukan semua itu dan meningkatkan sistem. Ini membuat saya penasaran bagaimana memperbarui indeks paket tanpa menginstal apa pun.

tepang
sumber

Jawaban:

90

The check-updateperintah akan menyegarkan indeks paket dan memeriksa update yang tersedia:

yum check-update
mengibaskan
sumber
3
Perintah ini memungkinkan Anda untuk menentukan apakah ada pembaruan untuk paket yang Anda instal . yummengembalikan daftar semua pembaruan paket dari semua repositori jika ada. apt-get updatemenyegarkan file indeks tetapi yum check-updatetidak.
SuB
Ini tidak berfungsi jika yumsudah dijalankan baru-baru ini, lihat beberapa jawaban lain untuk alternatif ...
rogerdpack
29

Sementara yum check-updateakan memeriksa pembaruan untuk paket yang diinstal, jika perlu di-refresh, demikian juga sebagian besar perintah lainnya.

Perintah yang benar-benar setara apt-get updateadalah yum makecache... namun umumnya tidak disarankan untuk menjalankannya secara langsung, dalam yum.

James Antill
sumber
1
Saya tidak mengerti kalimat pertama. Bisakah Anda ulangi mungkin?
tshepang
8
Ini berarti bahwa yumperintah lain , misalnya yum upgradeakan berjalan secara otomatis yum check-updatejika perlu. Dengan kata lain, yum upgradepada dasarnya sama dengan apt-get update; apt-get upgrade.
Mikel
Terima kasih! yum check-update tidak membantu saya terhadap 404 kesalahan. Tapi yum makecache membantu! BESAR terima kasih!
socketpair
Yang asli adalah tentang memperbarui repodata secara otomatis untuk menyajikan informasi terbaru (sesuatu yang apt-get tidak lakukan, atau setidaknya tidak pada tahun 2011). Setelah diedit, sekarang anehnya tidak ada artinya :(.
James Antill
Mengapa tidak disarankan untuk menjalankan yum makecache? Ini terdaftar di halaman manual dan tampaknya berfungsi seperti apt-get update... juga perhatikan bahwa yum check-updatetidak selalu melakukan penyegaran, lihat jawaban lain, FWIW :)
rogerdpack
21

Sayangnya yum check-updatesecara default tidak menarik perubahan dari repositori jarak jauh sampai yum.confparameter metadata_expire telah berlalu (default 90m). Tampaknya tujuannya adalah "tahu apakah mesin Anda memiliki pembaruan yang perlu diterapkan tanpa menjalankannya secara interaktif" jadi pada dasarnya itu "memeriksa apakah ada paket yang dapat diperbarui" tidak "menyegarkan daftar paket yang dapat saya perbarui" seperti yang Anda lakukan akan saya harapkan.

Jadi, jika Anda menjalankan yum check-updatedan mendapatkan ini:

$ sudo yum check-update
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile

packagename      version     repo

Ini berarti bahwa pembaruan cek tidak melakukan pembaruan, seperti apt-get updatehalnya.

Anda dapat melihat berapa lama sebelum melakukan "penyegaran otomatis" yang dilakukan semua perintah di bawahnya, dengan menjalankan ini :yum repolist enabled -v

Bekerja di sekitar:

gunakan yum clean expire-cache (atau yum clean all) terlebih dahulu, maka perintah yum di masa depan akan menyegarkan secara otomatis cache "saat dijalankan." . Karena perintah yum berikutnya menyegarkan cache, ini dalam praktiknya sama dengan apt-get update.

Atau ubah parameter metadata_expire dari yum.conf menjadi kurang dari default 90 menit, saya kira.

Atau jalankan yum makecache(dari jawaban lain) yang tampaknya menghapus cache dan menarik salinan baru saat itu. Tapi sepertinya butuh waktu lebih lama dari clean all(?) FWIW.

rogerdpack
sumber
2
Tidak yakin mengapa jawaban ini merana di bagian bawah. Ini sepertinya jawaban yang jelas dan sederhana.
cbmanica
2

Itu adalah perintah untuk memperbarui cache lokal, karenanya

yum makecache

tampaknya menjadi perintah yang Anda cari, menurut Bekerja dengan cache Yum .

Biasanya Anda tidak perlu menjalankan perintah ini secara langsung karena yum sudah memeriksa dan menyegarkan metadata berdasarkan nilai metadata_expire di yum.conf, standarnya adalah 6 jam.

Namun, mungkin ada setidaknya satu kasus penggunaan, yang ada dalam buku pedoman yang dimungkinkan, karena Anda tidak memiliki cara dalam buku pedoman yang dimungkinkan untuk hanya memperbarui cache tanpa menginstal paket apa pun (Lihat masalah yang mungkin 33461 dan 40068 , yang tampaknya diperbaiki dalam versi 2.8, 46183 ). Modul yum yang mungkin membutuhkan nama paket untuk opsi 'update_cache: yes' untuk memiliki efek. Jadi, sebagai alternatif 'command: yum makecache' dapat digunakan di playbook.

dnf juga memiliki perintah makecache, walaupun dimungkinkan juga untuk memaksakan sinkronisasi metadata dengan sakelar --refresh.

Tufan K
sumber
Jawaban yang ada ini sudah menyebutkan yum makecache; mungkin Anda dapat memperluas jawaban agar lebih bermanfaat, misalnya dengan menjelaskan mengapa yum makecachetidak disarankan, atau apa yang dnfsederajat.
Stephen Kitt