LINUX.ORG.RU
ФорумAdmin

yum update требует yum clean all для нормальной работы


1

0

Сделал репозиторий для одной из наших прог. yum install и yum update работают.

Для того чтобы обновить репо я удаляю все из директории, копирую туда rpm из нового релиза и запускаю createrepo.

На клиентской машине yum update показывает что нечего обновлять до тех пор пока я не сделаю yum clean all.

что я делаю не так?


всё правильно, так и должно быть. yum update скачивает грубо говоря файл лист репозитория, если после этого репозиторий изменился, необходимо повторно получить этот файл лист, но он повторно запросится только по истечении своей актуальности (определяется в yum.conf). Чтобы не ждать время можно этот файл лист ликвидировать через yum clean all (также удалятся и закэшированные пакеты). После этого можно получить новый файл лист.

Deleted
()

> что я делаю не так?

А вот что:

> обновить репо я удаляю все из директории


вместо createrepo -u. От необходимости yum clean all на клиентах это не спасет, но некоторое количество телодвижений сэкономит. А по теме — man yum.conf насчет metadata_expire

dexpl ★★★★★
()
Ответ на: комментарий от dexpl

Простите за дилетантский вопрос, а разве yum при каждом запуске не должен проверять индекс всех реп на предмет изменений?
У меня как у пользователя сложилось субъективное впечатление, что именно так он и работает (при обновлении качает индексы обычно только для некоторых реп).

nnz ★★★★
()
Ответ на: комментарий от nnz

> разве yum при каждом запуске не должен проверять индекс всех реп на предмет изменений?

При каждом — не должен. Параметр metadata_expire в /etc/yum.conf как раз-таки и задает время жизни метаданных (индекса)

dexpl ★★★★★
()
Ответ на: комментарий от dexpl

У меня в центосе по дефолту 1 час.
Кажется, понимаю, откуда проблема топикстартера - для ежедневных обновлений 1 час вполне приемлемо, а вот для ежеминутного тестирования - не особо.

nnz ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.