YUM Fehler beheben
Problem
Bei der Installation von i-effect wird angezeigt, dass YUM nicht korrekt arbeitet. Eine Überprüfung mit yum check zeigt Fehler wie diesen
Fehlermeldung von "yum check"
error: db4 error(-30974) from dbenv->open: DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db4 - (-30974)
error: cannot open Packages database in /QOpenSys/var/lib/rpm
Traceback (most recent call last):
File "/QOpenSys/pkgs/bin/yum", line 29, in <module>
yummain.user_main(sys.argv[1:], exit_code=True)
File "/QOpenSys/pkgs/share/yum-cli/yummain.py", line 288, in user_main
errcode = main(args)
File "/QOpenSys/pkgs/share/yum-cli/yummain.py", line 140, in main
result, resultmsgs = base.doCommands()
File "/QOpenSys/pkgs/share/yum-cli/cli.py", line 440, in doCommands
return self.yum_cli_commands[self.basecmd].doCommand(self, self.basecmd, self.extcmds)
File "/QOpenSys/pkgs/share/yum-cli/yumcommands.py", line 1507, in doCommand
header=lambda x: None):
File "/QOpenSys/pkgs/lib/python2.7/site-packages/yum/__init__.py", line 1415, in _rpmdb_warn_checks
for prob in self.rpmdb.check_dependencies():
File "/QOpenSys/pkgs/lib/python2.7/site-packages/yum/rpmsack.py", line 1454, in check_dependencies
pkgs = self.returnPackages()
File "/QOpenSys/pkgs/lib/python2.7/site-packages/yum/rpmsack.py", line 616, in returnPackages
for hdr, idx in self._get_packages():
File "/QOpenSys/pkgs/lib/python2.7/site-packages/yum/rpmsack.py", line 1199, in _get_packages
mi = ts.dbMatch(*args, **kwds)
File "/QOpenSys/pkgs/lib/python2.7/site-packages/rpmUtils/transaction.py", line 58, in dbMatch
mi = self.ts.dbMatch(*args, **kwds)
_rpm.error: rpmdb open failed
Lösung
Die YUM Datenbank muss repariert werden, damit i-effect das YUM Tool verwenden kann um benötigte Programme zu installieren.
Die folgenden Befehle eingeben
Datenbank reparieren
mv /QopenSys/var/lib/rpm/__db* /tmp/
rpm --rebuilddb
yum clean all
Eine anschließende Überprüfung sollte keine Fehler mehr melden.
Datenbank überprüfen
yum check
check all
YUM entfernen und neu installieren
Lässt sich YUM nicht mit der oben beschriebenen Methode reparieren, kann YUM auch vollständig entfernt und neu installiert werden.
Mit dem Entfernen von YUM müssen alle verwendeten Pakete neu installiert werden. Es ist sicher zu stellen, dass keine Anwendung /QOpenSys/pkgs verwendet, während diese Reparatur durchgeführt wird. Die von i-effect benötigten Pakete werden während der Installation automatisch geladen. Alle anderen Pakete muss der Benutzer manuell nach installlieren.
YUM vollständig entfernen
rm -r /QOpenSys/pkgs/
rm -r /QOpenSys/etc/yum/
rm -r /QOpenSys/var/cache/yum/
rm -r /QOpenSys/var/lib/yum/
rm -r /QOpenSys/var/lib/rpm/
Tools für i-effect installieren.
/i-effect/v2r9m0/base/tools/scripts/installTools.sh