I pushed an RPM into a remote repo, but yum list doesn't yet show the package yet.

I verified the above by going to the remote website http:repo.

When I do yum update, it says no packages to update all are up to date.

How do I tell yum to pull a new list from the remote?

  • 2
    Remember you also have to run createrepo --update on the remote repository, or be using something that does this for you such as Spacewalk/Satellite. Sep 4 '15 at 0:43

By default yum caches metadata for its repositories (the default time is 90 minutes but can be changed).

If you erase the cached metadata, then yum will fetch it again on its next run.

yum clean metadata
  • cool worked but ended up with : File "/usr/share/yum-cli/output.py", line 2252, in format_missing_requires msg += _('\n Requires: %s') % (ui_req,) UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 0: ordinal not in range(128)
    – resultsway
    Sep 4 '15 at 0:54
  • That's a whole different situation; you should find some solutions if you search for it. Sep 4 '15 at 1:02

Usually the repo metadata is updated by createrepo(8). It is possible that the remote end have not yet run that and is serving outdated metadata.

But anyway, to tell yum to update local metadata, do yum makecache, or yum makecache fast:

          Is  used  to  download  and make usable all the metadata for the
          currently enabled yum repos. If the argument "fast"  is  passed,
          then  we just try to make sure the repos. are current (much like
          "yum clean expire-cache").

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.