Відповіді:
check-update
Команда буде оновлювати індекс пакета і перевірити наявність оновлень:
yum check-update
yum
це було запущено недавно, дивіться деякі інші відповіді на альтернативи ...
Хоча yum check-update
буде перевіряти оновлення встановлених пакетів, якщо його потрібно буде оновити, так буде і більшість інших команд.
Команда це строго еквівалент apt-get update
є yum makecache
... Однак це , як правило , не рекомендується запускати що безпосередньо в ням.
yum
команди, наприклад yum upgrade
, автоматично запускаються yum check-update
при необхідності. Іншими словами, yum upgrade
в основному те саме, що apt-get update; apt-get upgrade
.
yum makecache
? Він вказаний на сторінці man і, здається, працює як apt-get update
... також зауважте, що yum check-update
не завжди виконується оновлення, дивіться інші відповіді, FWIW :)
На жаль, yum check-update
за замовчуванням не знімає змін із віддалених сховищ, поки yum.conf
не пройде параметр metadata_expire (за замовчуванням 90м). Мабуть, його мета полягає в тому, щоб "знати, чи були у вашій машині оновлення, які потрібно було застосувати, не запускаючи його інтерактивно", так що в основному це "перевірити, чи є якісь пакети, здатні до оновлення", не "оновіть список пакетів, до яких я міг би оновити", як ви сподіваюся.
Тож якщо ти запустиш yum check-update
і отримаєш це:
$ sudo yum check-update
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
packagename version repo
Це означає, що перевірка-оновлення не виконує оновлення, як apt-get update
це робиться.
Ви можете побачити, скільки часу пройде, перш ніж зробити "автоматичне оновлення", яке виконують всі команди під ним, виконавши це :yum repolist enabled -v
Обхід:
спочатку скористайтесяyum clean expire-cache
(або yum clean all
), тоді будь-які майбутні команди yum автоматично оновлять кеш "під час запуску". . Оскільки майбутні команди yum оновлюють кеш, це на практиці те саме, що apt-get update
.
Або змінити параметр metadata_expire для yum.conf на менше 90min за замовчуванням, я думаю.
Або запустіть yum makecache
(з інших відповідей), який, здається, видалить кеш і витягніть свіжі копії відразу. Але, здається, це займе більше часу, ніж clean all
(?) FWIW.
Це команда оновити локальний кеш, отже
yum makecache
Здається, це команда, яку ви шукаєте, відповідно до роботи з кешем Yum .
Зазвичай вам не потрібно запускати цю команду безпосередньо, оскільки yum вже перевіряє та оновлює метадані на основі значення metadata_expire у yum.conf, за замовчуванням - 6 годин.
Однак може бути принаймні один випадок використання, який знаходиться в програмі "Ansible playbook", оскільки у вас немає способу оновити кеш-пам'ять лише для встановлення будь-яких пакетів (див. Відповідні випуски 33461 та 40068 , що, здається, має бути виправлено у версії 2.8, 46183 ). Модуль Ansible yum вимагає імені пакета для параметра "update_cache: так", щоб мати ефект. Отже, в якості альтернативи "команда: yum makecache" може бути використана в ігровій книзі.
dnf також має команду makecache, хоча також можна змусити синхронізацію метаданих за допомогою перемикача --refresh.
yum makecache
; можливо, ви можете розширити свою відповідь, щоб зробити її кориснішою, наприклад, пояснивши, чому yum makecache
це не рекомендується, або що таке dnf
еквівалент.
yum
повертає список усіх оновлень пакета з усіх сховищ, якщо такі є.apt-get update
оновити індексні файли, алеyum check-update
це не так.