Richard Shaw wrote:
Richard Shaw wrote:
I did something I don't plan on doing again, which was to blindly
trust the update process. I did a yum check-update and saw the
packages (something like 54mb) and then did a yum -y update && reboot
& (via ssh to my MythTV box) so I could close the window and the
process would complete. Next morning the box was acting funny so I
rebooted it to watch it load.
Services wpa_supplicant and nfs would not start so I started poking
around the log files and could not find anything out of the ordinary.
No errors in the yum log, in fact no entries for that day! I then
looked in the /var/cache/yum/packages (or something like that, I'm at
work right now) and saw MANY packages still there. I tried doing yum
update again but it would not run because it couldn't find the right
version of some library (I forget which now). I figured it was related
to the packages that were downloaded but not installed so I tried a
rpm -Uvh * in that folder but it complained of a unresolved dependency
for htmlview. I found the package yum was having trouble with and rpm
installed it.
Here's where I made my first major mistake in trying to recover. I did
a yum clean all which wiped out those packages and immediately tried
yum update. This time it only found 4 packages to update which seemed
to install fine. Again tried to reboot and wpa_supplicant and nfs
failed to start. I ended up just disabling wpa_supplicant since this
computer is hardwired only and the erase dependencies were many. The
nfs issue seemed to be related to an rpc issue so I did a yum erase
nfs and then yum install nfs and it was now working.
Next issue, I use the xterm trick to use Xine to play DVD's in MythTV
but it wasn't working. As it turns out Xine was fine and it was now
xterm which had a library issue. Did a yum erase xterm/yum install
xterm and now it's fine.
I'm not getting any errors or failed services anymore but I can only
guess what hidden gremlins are in the system now. Fortunately it's
only used as a MythTV/samba/nfs system and all those are working so
I'll probably leave it alone.
Any suggestions on figuring out which packages did not get updated or
on how to figure out what exactly happned?
Things I have tried: (Some mentioned above)
yum clean all (no help)
rpm -rebuilddb (no help)
Looked at every log in /var/log I thought relevant. There are no
entires from the original update process in yum.log. Does yum not
write anything to the log file until 100% complete?
Is there a way to check if all dependencies of already installed
packages are met?
Richard
Well, to responding to my own post, here's what I found out...
On this list I saw mention of using one of the yum utilities,
package-cleanup and decided to give it a try. It turns out it was
exactly what I needed. Running "package-cleanup --problems" showed me
all the packages and libraries I was "missing". They were not actually
missing but must have been the wrong version.
While trying to fix the broken updates I had some strange yum behavior
(at least it was strange to me). I had to do yum install instead of yum
update for the missing packages but when yum ran the dependency checks,
it would say the packages are marked for update. The table before the
yes no prompt would again list them as being installed, not upgraded.
However, when it was all said and done everything seemed to be happy
again and the system definitely seems more stable.
Richard
The packages were not know of by the package installed tracking
database. They could have still be there or they could have been
legitimately missing.
Anyway, I'm glad that package-cleanup help you to get your system back
in a fairly stable state. I am glad that someone developed this tool and
it is available to fix otherwise catastrophic problems caused by some
packages not accounting for all needed program elements.
Thanks for reporting back the solution that you used. I never thought to
suggest it to straighten out your particular problem.
Jim
--
Fourth Law of Thermodynamics:
If the probability of success is not almost one, it is damn near zero.
-- David Ellis