web-dev-qa-db-fra.com

Comment récupérer une mise à niveau ayant échoué ('apt-get -f install' et 'dpkg --configure -a' échouent)?

Lors d'une mise à niveau de lucid (10.04) à precise (12.04), la session X s'est arrêtée et j'ai essayé de récupérer la mise à niveau pour obtenir un système stable. J'ai effectué les étapes suivantes:

  1. SSH utilisé pour se connecter au système bloqué sur le réseau.
  2. Vérifié le contenu du répertoire /var/log/dist-upgrade. Il n'y a eu aucune activité sur main.log, apt.log ou term.log.
  3. top a montré que le processus "précis" utilisait environ 3% de la CPU, mais je n'ai trouvé aucune preuve que le processus de mise à niveau continuait à fonctionner.
  4. 'dpkg' ne s'est pas affiché en haut, mais il est apparu avec pgrep dpkg | xargs ps
  5. Tué les processus 'dpkg' et 'precise'
  6. J'ai essayé de récupérer la mise à niveau en exécutant Sudo fuser -vki /var/lib/dpkg/lock;Sudo dpkg --configure -a. Cela a partiellement réussi (certains packages ont été configurés), mais a échoué avec le message Processing was halted because there were too many errors. J'ai exécuté la même commande plusieurs fois et à chaque fois, certains packages étaient configurés mais d'autres échouaient.
  7. J'ai essayé de lancer Sudo apt-get -f install. Il échoue avec des erreurs similaires à dpkg.

La situation actuelle est que dpkg --configure -a et Sudo apt-get -f install échouent avec deux types d'erreur:

  1. Problèmes de dépendance, par exemple:

    dpkg: dependency problems prevent configuration of cifs-utils:
    cifs-utils depends on samba-common; however:
    Package samba-common is not configured yet.
    dpkg: error processing cifs-utils (--configure):
    dependency problems - leaving unconfigured
    
  2. Conflit de ressources, par exemple:

    debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable
    

De plus, il semble y avoir une référence à des problèmes de démarrage potentiels, je ne souhaite donc pas redémarrer sans réparer l'installation en premier:

    dpkg: too many errors, stopping
    Processing triggers for initramfs-tools ...
    update-initramfs: Generating /boot/initrd.img-3.2.0-25-generic
    cryptsetup: WARNING: failed to detect canonical device of /dev/sda1
    cryptsetup: WARNING: could not determine root device from /etc/fstab

Ma question est donc la suivante: comment obtenir une installation qui fonctionne lorsque dpkg --configure -a échoue?

14
rudivonstaden

J'ai réussi à récupérer la mise à niveau, bien que je ne sois pas sûr à 100% de ce qui a fonctionné. D'autres pourraient encore en bénéficier:

  1. J'ai réussi à récupérer ma session X en basculant sur un terminal en ligne de commande (Ctl + Alt + F2), puis de nouveau au terminal X (Ctl + Alt + F7), qui m'a ensuite demandé de me reconnecter. Le système était instable mais fonctionnait. J'ai ensuite pu fermer deux invites liées à la mise à niveau.

  2. Il semble que le gestionnaire de mise à jour n'ait pas désactivé les PPA, j'ai donc nettoyé /etc/apt/sources.list.d/ (supprimé toutes les entrées). Il a été suggéré sur IRC (#ubuntu) que je devrais utiliser ppa-purge pour nettoyer les PPA, mais à la fin je les ai simplement supprimés.

  3. Ensuite, Sudo apt-get update et Sudo apt-get -f install ont résolu la plupart des problèmes restants, mais il restait des problèmes de dépendance avec samba.

  4. J'ai réussi à réparer samba en l'enlevant (Sudo apt-get remove samba) et en le réinstallant (Sudo apt-get install samba).

Après cela, le système était plus ou moins stable. Je devais également supprimer et réinstaller unité après un redémarrage, mais sinon cela fonctionnait bien.

6
rudivonstaden

J'ai eu ce problème aujourd'hui en essayant de passer à 14.04. J'ai remarqué des messages similaires à:

debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable

J'ai utilisé Sudo fuser /var/cache/debconf/config.dat pour déterminer quel processus était bloqué. Remarquez que vous devez trouver le fichier exact qui est "bloqué". Apparemment, quelque chose d’avant n’est pas apparu mais a bloqué la progression de la mise à jour. Après avoir mis fin à ce processus, j'ai pu reprendre la correction du système avec les commandes habituelles.

1
jippie

J'ai eu un problème similaire: 1. Synaptics ne lancerait pas ==> Message d'erreur: "exécutez Sudo dpkg --configure -a"

  1. "Sudo dpkg --configure -a" échouerait ET redémarrer mon PC (plusieurs fois)

  2. Tous "Sudo apt-get ..." échouerait avec le même message d'erreur: $ Sudo apt-get autoclean E: dpkg, debe ejecutar manualmente "Sudo dpkg --configure -a" pour corriger le problème.

TRAVAILLE POUR MOI: 1. Exécuté plusieurs fois "Sudo apt-get update" JUSQU'A ce téléchargement de paquet plus.

PASS N: Ign http://es.archive.ubuntu.com fidèle/univers Translation-es_ES Descargados 4.294 kB en 31seg. (137 ko/s) E: Interaction entre les tâches, les instructions, les instructions de base, "Gestion des données, configuration, configuration et le traitement des données" .

PASS N + 1: Ign http://es.archive.ubuntu.com fidèle/univers Translation-es_ES E: se interrumpió la ejecución de dpkg, debe ejecutar manualmente "Aidez-nous à configurer" pour résoudre le problème $ NTILN NO "Descargados" le message apparaît (à télécharger).

  1. Réexécuté "Sudo dpkg --configure -a"

Et cela a fonctionné alors ... je ne sais pas pourquoi/comment. Mais d'accord maintenant.

0