Stablemirror is a yum plugin to choose a stable, working, up-to-date mirror each time. There have been many complaints on this list in recent weeks about difficulty in using yum to update, with yum not being able to find a working mirror. This plugin addresses those complaints. <http://georgeanelson.com/stablemirror.htm> Yum normally uses a randomly chosen mirror, different each time run. If all mirrors were always up-to-date, this would work well. However, when a repository is updated, its mirrors gradually come up-to-date over the next day or so, as some mirrors update often, most update daily, some less often, and some never update. This means that when yum is run, it may use a mirror that is more, or less up-to-date than last time. It may use a broken mirror, or a mirror that doesn't even provide the repository, or a stuck mirror that may be months out of date. When an out-of-date mirror is used, yum will delete many packages and add only a few, and a package that is to be updated may no longer be present. When yum fails over to another mirror, that mirror may be at a different date, and nothing will work with it. If yum is run, and run again within its half-hour time window, it can get into a situation where no mirrors match, while downloading dozens of megabytes of mis-matched data. Stablemirrors makes yum use its mirrors in ths same order each time, though different for each machine. This alone fixes most of the issues. Stablemirrors makes sure to check the date of a mirror before using it. The first mirror must be at least as up-to-date as the last time run; and any subsequent mirrors used on failures must be at the same date as the first mirror. This is done by downloading the tiny repomd.xml file, so little bandwidth is wasted. Stablemirrors makes Ctl-C do something useful, at least during downloads (yum still eats Ctl-C at other times; I hope to fix that). The choice is given to Quit, Continue, or to Avoid or Reject the previous mirror. If, for example, you are stuck waiting for a slow mirror, you can press Ctl-C, and Avoid that mirror in the future, or Reject it for all time. The list of stable mirrors in /var/cache/yum/stablemirrors is easily edited if you wish. Cleaning the yum cache will remove the file. I hope to get feedback on stablemirrors before submitting it as a RFE for yum plugins. ____________________________________________________________________ TonyN.:' <mailto:tonynelson@xxxxxxxxxxxxxxxxx> ' <http://www.georgeanelson.com/>