Ma base RPM ne marche plus !! :(

fullphil -  
PERCE-NEIGE Messages postés 86 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Alors j'ai voulu bidouiller il y a qq temps mes rpm en installant des versions de rpm par dessus ou plutot je sais plus ce que j'ai fait lol. Il se trouve que depuis ce moment là ca ne marche plus et donc je ne peux plus rien installer avec les rpm. Voila mon message d'erreur :

[root@localhost rpm]# rpm -ivh libelf-0.8.2-2.i386.rpm
rpmdb: /var/lib/rpm/Pubkeys: unsupported hash version: 8
cannot handle file 'libc.so.6' with TLS data
[root@localhost rpm]# rpm -ivh rpm-4.2-1.i386.rpm
rpmdb: /var/lib/rpm/Basenames: unsupported hash version: 8
cannot handle file 'libc.so.6' with TLS data
[root@localhost rpm]# rpm -ivh glibc-2.3.2-101.1.i386.rpm
rpmdb: /var/lib/rpm/Pubkeys: unsupported hash version: 8
cannot handle file 'libc.so.6' with TLS data
[root@localhost rpm]#

Au secours je craque...

6 réponses

  1. bob031 Messages postés 8228 Statut Membre 473
     
    salut,

    B1) on fait une copie, au cas ou, du dossier /var/lib/rpm

    # cd /var/lib
    # tar czvf /tmp/rpmdb.tar.gz rpm

    B2) on vérifie l'intégrité :

    # cd /var/lib/rpm
    # /usr/lib/rpm/rpmdb_verify Packages
    s'il n'y a pas d'erreur on répare :

    B3) réparation
    # mv Packages Packages-ORIG
    # /usr/lib/rpm/rpmdb_dump Packages-ORIG | /usr/lib/rpm/rpmdb_load Packages

    B4) ensuite on lit les headers dans Packages en faisant :
    # rpm -qa

    s'il n'y a pas de segfault on reconstruit les indices :

    B5) reconstruction des indices
    # rpm -vv --rebuilddb

    attention cette dernière commande risque d'être très longue (allez prendre un café par exemple ..)

    ensuite cela devrait fonctionner à nouveau !
    12
    1. tck-lt Messages postés 128 Date d'inscription   Statut Membre Dernière intervention   3
       
      Merci bob !

      Pour ceux qui auraient une erreur de type : rpmdb : unable to lock mutex: Invalid Argument

      et/ou qui n'arrive pas à faire le rebuild (Databse Already exists), le tuto de bob fonctionne nickel et évite un format !
      0
  2. ov700
     
    base de donnees rpm __db3 corrompue

    Solution:
    # rm /var/lib/rpm/__db*
    # rpm --rebuilddb
    # yum -y update 
    1
    1. gaby76
       
      super :) merci ca va m'éviter de rebooter mon systeme chauqe fois que la base rpm se plante
      0
  3. mltfrm
     
    Salut,

    impossibilité de mettre à jour mon système, un $ rpmdrake me donnait:

    rpmdb: PANIC: fatal region error detected; run recovery
    erreur: erreur db4(-30977) de dbenv->open: DB_RUNRECOVERY: Fatal error, run data base recovery
    erreur: ne peut ouvrir l'index Packages en utilisant db3 -  (-30977)
    erreur: impossible d'ouvrir la base de données Package dans /var/lib/rpm
    unlocking urpmi database
    


    Suite à :
    # rm /var/lib/rpm/__db*
    # rpm --rebuilddb

    ça remarche! Merci!
    1
  4. phil
     
    Bonsoir,
    tu pourrais essayer de reconstruire la base rpm (en ayant fait une sauvegarde au préalable):
    rpm --rebuilddb
    a+
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. buttbadger Messages postés 71 Statut Membre 16
     
    salut

    J'ai presque eu le même problème. ma base RPM marche plus. J'obtiens ça quand je veux installer un nouveau rpm :

    Component: Software Installer
    Summary: TBc3704fb6 config.py:656:_getsysver:TypeError: rpmdb open failed
    
    Traceback (most recent call last):
      File "/usr/sbin/system-install-packages", line 243, in ?
        main()
      File "/usr/sbin/system-install-packages", line 236, in main
        pkginst = SinglePackageInstaller()
      File "/usr/sbin/system-install-packages", line 57, in __init__
        GraphicalYumBase.__init__(self, False)
      File "/usr/lib/python2.4/site-packages/pirut/__init__.py", line 124, in __init__
        plugin_types=(yum.plugins.TYPE_CORE,))
      File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 125, in doConfigSetup
        self.conf = config.readMainConfig(startupconf)
      File "/usr/lib/python2.4/site-packages/yum/config.py", line 597, in readMainConfig
        vars['releasever'] = _getsysver(startupconf.installroot, startupconf.distroverpkg)
      File "/usr/lib/python2.4/site-packages/yum/config.py", line 656, in _getsysver
        idx = ts.dbMatch('provides', distroverpkg)
    TypeError: rpmdb open failed
    
    Local variables in innermost frame:
    installroot: /
    ts: <rpmUtils.transaction.TransactionWrapper instance at 0x8d4ebcc>
    distroverpkg: redhat-release
    


    J'ai donc tenté un rpm rebuilddb et j'obtiens ça :

    rpmdb: PANIC: fatal region error detected; run recovery
    erreur: erreur db4(-30977) de dbenv->open: DB_RUNRECOVERY: Fatal error, run database recovery
    erreur: ne peut ouvrir l'index Packages en utilisant db3 -  (-30977)
    [root@localhost max]# rpm -vv --rebuilddb
    D: reconstruction de la base de données de /var/lib/rpm en /var/lib/rpmrebuilddb.18848
    D: création du répertoire /var/lib/rpmrebuilddb.18848
    D: ouverture d'une vieille base de données avec dbapi 3
    D: ouverture  db environnement /var/lib/rpm/Packages joinenv
    rpmdb: PANIC: fatal region error detected; run recovery
    erreur: erreur db4(-30977) de dbenv->open: DB_RUNRECOVERY: Fatal error, run database recovery
    D: ouverture     index db    /var/lib/rpm/Packages rdonly mode=0x0
    erreur: ne peut ouvrir l'index Packages en utilisant db3 -  (-30977)
    D: destruction du répertoire /var/lib/rpmrebuilddb.18848
    D: May free Score board((nil))
    


    Est-ce que c'est mort? va falloir que je reformatte et réinstalle Fedora?
    merci :)
    0
    1. aruju Messages postés 2219 Date d'inscription   Statut Contributeur Dernière intervention   403
       
      salut,

      essaye
      rpmdb --rebuilddb
      0
  7. PERCE-NEIGE Messages postés 86 Date d'inscription   Statut Membre Dernière intervention   508
     
    Excusez-moi, étant novice, il y a plusieurs choses qui m'ont échappées.
    J'ai fait:

    [USER@MONORDI ~]$ su
    Mot de passe :
    [root@MONORDI]# cd /var/lib
    [root@MONORDI lib]# tar czvf /tmp/rpmdb.tar.gz rpm
    rpm/
    rpm/Dirnames
    rpm/Packages-ORIG

    rpm/Requireversion
    rpm/Group
    rpm/Pubkeys
    rpm/Installtid
    rpm/Sha1header
    rpm/Basenames
    rpm/Provideversion
    rpm/.rpm.lock
    rpm/__db.004
    rpm/Requirename
    rpm/Conflictname
    rpm/Sigmd5
    rpm/Obsoletename
    rpm/Name
    rpm/__db.001
    rpm/Providename
    rpm/__db.003
    rpm/Filedigests
    rpm/__db.002
    rpm/Triggername
    [root@MONORDI lib]#
    [root@MONORDI lib]#
    [root@MONORDI lib]#
    [root@MONORDI lib]# cd /var/lib/rpm
    [root@MONORDI rpm]# /usr/lib/rpm/rpmdb_verify Packages
    rpmdb_verify: Packages: No such file or directory
    [root@MONORDI rpm]# mv Packages Packages-ORIG
    mv: impossible d'évaluer « Packages »: Aucun fichier ou dossier de ce type
    [root@MONORDI rpm]# /usr/lib/rpm/rpmdb_dump Packages-ORIG | /usr/lib/rpm/rpmdb_load Packages
    rpmdb_load: configured environment flags incompatible with existing environment
    rpmdb_dump: open: Packages-ORIG: No such file or directory
    [root@MONORDI rpm]# rpm -qa
    rpmdb: Thread/process 15804/3078182592 failed: Thread died in Berkeley DB library
    erreur: erreur db3(-30974) de dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
    erreur: ne peut ouvrir l'index Packages en utilisant db3 - (-30974)
    erreur: impossible d'ouvrir la base de données Package dans /var/lib/rpm
    rpmdb: Thread/process 15804/3078182592 failed: Thread died in Berkeley DB library
    erreur: erreur db3(-30974) de dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
    erreur: impossible d'ouvrir la base de données Package dans /var/lib/rpm
    [root@MONORDI rpm]# rpm -vv --rebuilddb
    D: rebuilding database /var/lib/rpm into /var/lib/rpmrebuilddb.17953
    D: creating directory /var/lib/rpmrebuilddb.17953
    D: opening old database with dbapi 3
    D: opening db environment /var/lib/rpm cdb:mpool:joinenv
    rpmdb: Thread/process 15804/3078182592 failed: Thread died in Berkeley DB library
    erreur: erreur db3(-30974) de dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
    D: opening db index /var/lib/rpm/Packages create mode=0x0
    erreur: ne peut ouvrir l'index Packages en utilisant db3 - (-30974)
    D: removing directory /var/lib/rpmrebuilddb.17953
    [root@MONORDI rpm]#
    0