Comment désinstaller un paquet sans désinstaller automatiquement
Résolu/Fermé
Utilisateur anonyme
-
Modifié par Ulyleo le 23/12/2015 à 19:58
Utilisateur anonyme - 24 déc. 2015 à 17:06
Utilisateur anonyme - 24 déc. 2015 à 17:06
A voir également:
- Comment désinstaller un paquet sans désinstaller automatiquement
- Desinstaller edge - Guide
- Désinstaller bing - Guide
- Désinstaller onedrive - Guide
- Comment desinstaller une appli sur pc - Guide
- Désinstaller mcafee - Guide
3 réponses
mamiemando
Messages postés
33079
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
23 avril 2024
7 749
Modifié par mamiemando le 23/12/2015 à 22:17
Modifié par mamiemando le 23/12/2015 à 22:17
Bonjour,
Tu ne pourras pas, c'est une dépendance en cascade. gnome est un méta-paquet, qui dépend notamment de gnome-games, qui lui-même est un méta-paquet, qui dépend de iagno. Par définition des dépendances, tu ne peux donc pas supprimer iagno sans supprimer les paquets qui en dépendent.
Par contre, il faut bien comprendre qu'un méta-paquet ne contient pas de "donnée" (ou très peu). Pour t'en convaincre, tu peux regarder avec apt-file :
Exemple :
En fait, un meta-paquet est juste un moyen pratique d'installer un jeu de paquets facilement. Ainsi, si gnome-games est supprimé, ça ne veut pas dire que tous les autres jeux gnome sont supprimés. Idem pour gnome, ça ne veut pas dire que le bureau gnome (gnome-core...) ou les applications gnome (brasero, evolution, gimp, gedit, etc...). Tu peux donc les supprimer sans craindre de désinstaller une application.
Bonne chance
Tu ne pourras pas, c'est une dépendance en cascade. gnome est un méta-paquet, qui dépend notamment de gnome-games, qui lui-même est un méta-paquet, qui dépend de iagno. Par définition des dépendances, tu ne peux donc pas supprimer iagno sans supprimer les paquets qui en dépendent.
Par contre, il faut bien comprendre qu'un méta-paquet ne contient pas de "donnée" (ou très peu). Pour t'en convaincre, tu peux regarder avec apt-file :
sudo apt-get install apt-file
apt-file update
apt-file list gnome | grep "^gnome:"
Exemple :
(mando@velvet) (~) $ apt-file list gnome | grep ^gnome:
gnome: /usr/share/bug/gnome/control
gnome: /usr/share/bug/gnome/presubj
gnome: /usr/share/doc/gnome/changelog.gz
gnome: /usr/share/doc/gnome/copyright
(mando@velvet) (~) $ apt-file list gnome-games | grep ^gnome-games:
gnome-games: /usr/share/doc/gnome-games/changelog.gz
gnome-games: /usr/share/doc/gnome-games/copyright
En fait, un meta-paquet est juste un moyen pratique d'installer un jeu de paquets facilement. Ainsi, si gnome-games est supprimé, ça ne veut pas dire que tous les autres jeux gnome sont supprimés. Idem pour gnome, ça ne veut pas dire que le bureau gnome (gnome-core...) ou les applications gnome (brasero, evolution, gimp, gedit, etc...). Tu peux donc les supprimer sans craindre de désinstaller une application.
Bonne chance
Utilisateur anonyme
23 déc. 2015 à 23:54
23 déc. 2015 à 23:54
Pour etre plus clair le sujet c'est:
Comment désinstaller un paquet sans désinstaller automatiquement ces dépendances?
Comment désinstaller un paquet sans désinstaller automatiquement ces dépendances?
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 407
24 déc. 2015 à 08:12
24 déc. 2015 à 08:12
Salut,
La réponse de mamiemando est pourtant claire :
PS. Inutile d'ouvrir d'autres posts sur le même sujet, les explications données ici y sont suffisamment claires, et si des précisions doivent y être apportées, elles se feront à la suite de celui-ci pour une meilleure compréhension.
La réponse de mamiemando est pourtant claire :
Tu ne pourras pas, c'est une dépendance en cascade.
PS. Inutile d'ouvrir d'autres posts sur le même sujet, les explications données ici y sont suffisamment claires, et si des précisions doivent y être apportées, elles se feront à la suite de celui-ci pour une meilleure compréhension.
Utilisateur anonyme
>
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
Modifié par Ulyleo le 24/12/2015 à 11:06
Modifié par Ulyleo le 24/12/2015 à 11:06
ok.merci....mais dans la seconde partie de la reponse de mamienando il semblait dire que c'était possible donc j'ai pas très bien saisi....
mamiemando
Messages postés
33079
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
23 avril 2024
7 749
Modifié par mamiemando le 24/12/2015 à 12:03
Modifié par mamiemando le 24/12/2015 à 12:03
ok.merci....mais dans la seconde partie de la reponse de mamienando il semblait dire que c'était possible donc j'ai pas très bien saisi....
Je vais tenter de t'expliquer mieux la logique, car ce n'était pas forcément assez clair dans mon premier message.
Dépendances en cascade
En gros imagine que A dépend de B, qui dépend de C. Si tu enlèves C, alors il manque à B une dépendance pour être correctement installé. Il n'est donc pas "bien installé". Du coup il n'est pas considéré comme installé, et en conséquence, l'une des dépendances de A n'est pas satisfaite.
Ainsi, la suppression de C entraînerait en cascade celle de B et de A. Plus généralement tous les paquets qui dépendent de C seraient supprimés. Ce raisonnement se poursuivrait ensuite récursivement de sorte à ne conserver que les paquets dont toutes les dépendances sont satisfaites.
C'est un peu comme si tu enlevait une carte au bas d'un château de cartes. Tout ce qui s'appuie dessus se casse la figure (ce qui ne veut pas dire que tout le château s'écroule).
Dépendances automatiques
Ensuite un autre point important. Supposons que tu installes C, mais que ni B ni A ne soient préalablement installés. Alors A et B sont installés "automatiquement" par le gestionnaire de paquets, afin de pouvoir installer C avec succès. Ceci dit, apt sait que C a été explicitement installés, alors que A et B ont été installés implicitement.
Cela veut dire que le jour où tu supprimes C, apt se dira qu'il n'a pas de raison de garder A et B, puisqu'ils étaient juste là pour faire marcher C. Typiquement
Eh bien le plus simple c'est de désinstaller C et corriger la suppression en cascade dans ton gestionnaire de paquets (la logithèque ubuntu ou
Lis ensuite cette introduction à aptitude jusqu'à la section "faire une migration" :
https://www.mistra.fr/tutoriels-linux-outils-debian/651-linux-apt-migration.html
Exemple concret :
Par le passé tu as installé brasero, ce qui a installé automatiquement gnome-core. Supposons que tu veuilles virer C=brasero mais conserver B=gnome-core (et donc les dépendances de gnome-core).
On lance aptitude :
... et on cherche brasero, puis on le purge (
Ensuite tu vas dans le récapitulatif en appuyant sur
On se place alors sur ce paquet (avec les flèches) et on appuie sur
Bonne chance
Je vais tenter de t'expliquer mieux la logique, car ce n'était pas forcément assez clair dans mon premier message.
Dépendances en cascade
En gros imagine que A dépend de B, qui dépend de C. Si tu enlèves C, alors il manque à B une dépendance pour être correctement installé. Il n'est donc pas "bien installé". Du coup il n'est pas considéré comme installé, et en conséquence, l'une des dépendances de A n'est pas satisfaite.
Ainsi, la suppression de C entraînerait en cascade celle de B et de A. Plus généralement tous les paquets qui dépendent de C seraient supprimés. Ce raisonnement se poursuivrait ensuite récursivement de sorte à ne conserver que les paquets dont toutes les dépendances sont satisfaites.
C'est un peu comme si tu enlevait une carte au bas d'un château de cartes. Tout ce qui s'appuie dessus se casse la figure (ce qui ne veut pas dire que tout le château s'écroule).
Dépendances automatiques
Ensuite un autre point important. Supposons que tu installes C, mais que ni B ni A ne soient préalablement installés. Alors A et B sont installés "automatiquement" par le gestionnaire de paquets, afin de pouvoir installer C avec succès. Ceci dit, apt sait que C a été explicitement installés, alors que A et B ont été installés implicitement.
Cela veut dire que le jour où tu supprimes C, apt se dira qu'il n'a pas de raison de garder A et B, puisqu'ils étaient juste là pour faire marcher C. Typiquement
apt-get autoremovele verrait. Supposons que tu te dises : je veux garder B mais installer C, comment faire ?
Eh bien le plus simple c'est de désinstaller C et corriger la suppression en cascade dans ton gestionnaire de paquets (la logithèque ubuntu ou
aptitudetypiquement). En effet, ces deux outils récapitulent ce qu'ils vont faire avant de procéder à la suppression, et te laissent l'opportunité de corriger leur décision. Tu peux installer aptitude ainsi :
sudo apt-get update
sudo apt-get install aptitude
Lis ensuite cette introduction à aptitude jusqu'à la section "faire une migration" :
https://www.mistra.fr/tutoriels-linux-outils-debian/651-linux-apt-migration.html
Exemple concret :
Par le passé tu as installé brasero, ce qui a installé automatiquement gnome-core. Supposons que tu veuilles virer C=brasero mais conserver B=gnome-core (et donc les dépendances de gnome-core).
On lance aptitude :
sudo aptitude
... et on cherche brasero, puis on le purge (
_). Ceci revient à taper :
/^brasero$
_
Ensuite tu vas dans le récapitulatif en appuyant sur
g, et tu vois que B=gnome-core va être supprimé, alors que tu veux le garder.
On se place alors sur ce paquet (avec les flèches) et on appuie sur
+pour provoquer son installation (ou plutôt sa "non désinstallation"). Note qu'automatiquement les dépendances de gnome-core qui auraient été automatiquement supprimées sont également restaurées. Il ne reste plus qu'à confirmer en appuyant sur
g.
Bonne chance
23 déc. 2015 à 23:51
enfait mon problème c'est de pouvoir désinstaller un paquet sans desinstaller ces dépendances mon premier exemple n'illutsre peut-etre pas bien le problème c'est vrai mais quant je veu desinstaller brasero par exemple là ca veut desintaller aussi le gnome-core justement!!
Comment éviter ca?