web-dev-qa-db-fra.com

Comment corriger les mises à jour synaptiques cassées: "L'emballage est dans un très mauvais état incohérent"

J'ai un mini9 Dell Ubuntu 8.10. Un jour, j'ai eu l'idée brillante de voir si je pouvais installer une pile de lampe. J'ai eu du mal à installer MySQL 5.0. Je ne me souviens pas de l'erreur, mais depuis toutes les tentatives pour exécuter Update-Manager, Synaptic ou APT-Get échoue avec une erreur concernant MySQL-Server-5.0: "Le paquet est dans un très mauvais état incohérent".

J'ai essayé apt-get remove mysql-server-5.0 et aussi install mais sans chance. Les deux échouent avec la même erreur ci-dessous. Comment puis-je réparer cela?

 $ Sudo apt-get Supprimer mysql-server-5.0 [.____] Les listes de packages de lecture ... faites 
 Arbre de dépendance de la construction [.] DONNE [. ____] Les paquets suivants ont été automatiquement installés et ne sont plus nécessaires: [.____] DHCDBD Libisc32 [.____] Utilisez 'apt-get Autoremove' pour les supprimer. [.____] Les packages suivants seront supprimés: 
 MySQL-Server-5.0 [.____] 0 Mises à niveau, 0 nouvellement installé, 1 à supprimer et 164 non mis à niveau. [.____] 1 Non complètement installé ou supprimé.] Après cette opération , 85,4 Mo d'espace disque sera libéré. ​​[.____] Voulez-vous continuer [y/n]? [.____] DPKG: Traitement des erreurs MySQL-Server-5.0 (--ReMove): 
 Le paquet est dans un très mauvais état incohérent - vous devriez [.____ ____.] Les erreurs ont été rencontrées lors du traitement: [.____] MySQL-Server-5.0 [.____] E: Sous-processus/USR/bin/dpkg renvoyé un code d'erreur (1) [.____]
15
spoulson

Aucune des autres réponses n'a travaillé pour moi sur Maverick.

Dans mon cas, j'ai trouvé cela fonctionnait:

Sudo rm /var/lib/dpkg/info/flashplugin-nonfree.prerm

Sudo dpkg --remove --force-remove-reinstreq flashplugin-nonfree

(Remplacement de "Flashplugin-nonfree" avec le nom de l'emballage cassé et remplaçant "PRERM" avec le type de script qui a échoué - dans mon cas, c'était "POSTRM", le script post-supprimer.)

Et ils disent que Ubuntu est facile à utiliser !! Grombol Grombold

19
Robin Green

J'ai eu le même problème avec une installation mysql. Vous devez Purge le colonne. Supprimer simplement un package ne supprima pas les fichiers de configuration qui sont venus avec elle.

En outre, je vais faire référence à mysql-server-5., mais réalisez qu'il existe un package de wrapper MySQL-Server qui pointe toujours vers la dernière version. c.-à-d. Si vous demandez à installer MySQL-Server, apt-get devrait vous dire que cela dépend MySQL-Server-5. et installer les deux. Si vous avez le package MySQL-Server sur le système, vous devez vous assurer que cela est parti avant de tenter de réinstaller.

  • Assurez-vous que le serveur MySQL (MySQLD) ne fonctionne pas. Si c'est le cas, ramenez-le:

    Sudo /etc/init.d/mysqld arrêter

  • Vérifiez si des packages dépendent de MySQL-Server-5.0:

    Sudo apt-cache rdepends mysql-server-5.0

    S'ils le font, vous devrez utiliser le -- Force Option pour désinstaller.

  • Purger le paquet (inclure le --- Force Option, selon # 2)

    Sudo apt-get --purge supprimer --force mysql-server-5.0

  • Assurez-vous que les fichiers d'installation sont également effacés en exécutant

    Sudo apt-obtenir autoclean
    Sudo apt-obtenir autoremove

  • Installez le package du serveur à nouveau

    Sudo apt-get installer mysql-server-5.0

Cela devrait espérer résoudre votre problème. Cependant, le colis peut toujours être brisé si Vous avez apporté des modifications aux fichiers provenant du package mysql-commun.

mysql-commun est le package de base utilisé par les composants client et serveur. Si les choses ne fonctionnent pas encore, essayez de réinstaller ce paquet. Il y aura certainement des packages qui en dépendent; Vérifiez à l'aide du n ° 2 ci-dessus. Purge MySQL-Server Avant de réinstaller MySQL-Common. En outre, n'oubliez pas de réinstaller mysql-commun, sinon votre système sera très cassé.

6
user4358

Vous voudrez peut-être donner aptitude un essai, qui a une meilleure gestion des dépendances:

Sudo aptitude remove mysql-server-5.0
1
innaM

Essayer

Sudo dpkg -i reconfigure mysql-server-5.0
Sudo apt-get remove --force mysql-server-5.0

Si son autre paquet cassé, essayez apt-get remove --force Ce forfait aussi.

0
John Oxley

J'ai eu ce problème avec Mailman. Supprimé /etc/init.d/mailman avec

rm /etc/init.d/mailman

corrigé :)

0
Stéphan Champagne

L'erreur dpkg que vous avez indiquée indique que le problème survient lorsque dpkg tente de supprimer réellement le colis. (À la fin de la journée, apt-get et Synaptic _ et la main de même le travail réel à dpkg.)

Avez-vous essayé de faire exactement ce que le message dit et re - Installation d'abord?

apt-get install --reinstall mysql-server-5.0

Aussi stupide que cela puisse sonner, si dpkg est étouffé pendant le processus de retrait (car un fichier qu'il est censé supprimer a disparu dans l'intervalle) puis réinstallant et L'enlèvement peut parfois aider. Assurez-vous que mysql ne fonctionne pas avant d'essayer de l'installer ou de le supprimer, comme Nagul suggère .

0
Telemachus

dpkg -r --force-remove-reinstreq <package> Supprime un paquet sans vérifier si cela nécessite une réinstallation.

Après cela, vous devriez pouvoir réinstaller le paquet avec votre gestionnaire de packages préférés.

0
Jaime Soriano