J'aimerais installer la version la plus récente de boto , que je fais viapython setup.py install
Pourtant, lorsque j'essaie de supprimer l'ancienne version, les packages suivants sont également supprimés:
apt-get remove python-boto
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
cloud-init cloud-utils euca2ools python-boto
Comment puis-je dire au gestionnaire de paquets de supprimer boto, et de le marquer comme installé en externe (ou quelque chose comme ça) afin qu'apt ne tente pas de réparer la dépendance manquante?
Merci
Maxim.
Réponses:
Vous pouvez créer un package .deb factice à l'aide de l'
equivs
utilitaire, il fournira la dépendance sans installer aucun fichier. Ensuite, remplacez simplement le package actuellement installé par la version facticedpkg -i fake.deb
.la source
Utilisez directement dpkg, pas apt-get ou aptitude:
la source
Je sais que ceci est un ancien message, mais depuis que j’ai eu récemment un problème similaire, je voudrais partager ma solution dans l’espoir que, à l’avenir, une personne le trouve utile.
Si vous avez installé un paquet via aptitude, il attribue automatiquement des indicateurs aux dépendances (auto) et lorsque vous essayez de supprimer votre paquet à nouveau, il essaie de supprimer toutes ses dépendances pour lesquelles l'indicateur automatique est toujours défini.
Comme vous pouvez le voir dans mon cas, c’est zabbix que je veux supprimer:
Et si nous regardons le paquetage apache, cela ressemble à ceci
le premier drapeau "i" nous indique qu'apache est installé
Le prochain drapeau "A" signifie automatiquement installé
Donc, afin de résoudre ce problème sans avoir désinstallé apache, mysql et php, nous pouvons simplement supprimer le drapeau automatique avec aptitude comme ceci:
Cela ressemble maintenant à ceci lors de la suppression du paquet zabbix:
Veuillez consulter la page de manuel d'aptitude pour plus de détails.
la source
C'est exactement ce que
apt-mark hold
c'est.apt-mark hold package_name
De la documentation:
Pour retirer un colis:
apt-mark unhold package_name
la source
The following packages have unmet dependencies: mysql-server-5.7 : Depends: apparmor (>= 2.10) but it is not going to be installed E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
Autant que je sache, il n’existe aucun moyen de supprimer un package à l’aide de APT sans supprimer également les packages qui en dépendent.
Référence: http://www.debian.org/doc/manuals/apt-howto/ch-apt-get.fr.html
la source
Pour compléter la réponse de João Pinto, vous pouvez utiliser mon petit script pour réparer un paquet endommagé. Ce script créera un paquet factice avec des équivalents et l'installera. Vous pouvez trouver un article sur mon blog en français .
Ou directement sur le code général .
Pour l'utiliser:
la source