442 votes

Comment désinstaller Python 2.7 sur un Mac OS X 10.6.4 ?

Je veux supprimer complètement Python 2.7 de mon Mac OS X 10.6.4. J'ai réussi à supprimer l'entrée du fichier PATH en revenant sur ma .bash_profile . Mais je veux aussi supprimer tous les répertoires, fichiers, liens symboliques et entrées qui ont été installés par le paquet d'installation de Python 2.7. J'ai le paquet d'installation de http://www.python.org/ . Quels sont les répertoires/fichiers/entrées de fichiers de configuration que je dois supprimer ? Existe-t-il une liste quelque part ?

933voto

Ned Deily Points 40248

N'essayez pas de retirer un quelconque Python du système fourni par Apple qui est en /System/Library y /usr/bin car cela pourrait casser tout votre système d'exploitation.


NOTE : Les étapes énumérées ci-dessous font no n'affectent pas la version 2.7 de Python fournie par Apple ; ils ne suppriment qu'un framework Python tiers, tel que ceux installés par le programme installateurs python.org .


La liste complète est la suivante documenté ici . En gros, tout ce que vous devez faire est le suivant :

  1. Suppression du framework tiers Python 2.7

     sudo rm -rf /Library/Frameworks/Python.framework/Versions/2.7
  2. Supprimer le répertoire des applications Python 2.7

     sudo rm -rf "/Applications/Python 2.7"
  3. Supprimez les liens symboliques, dans /usr/local/bin qui pointent vers cette version de Python. Vous pouvez les voir en utilisant

     ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' 

puis exécutez la commande suivante pour supprimer tous les liens :

    cd /usr/local/bin/
    ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' | awk '{print $9}' | tr -d @ | xargs rm
  1. Si nécessaire, éditez le(s) fichier(s) de profil de votre shell pour supprimer l'ajout de /Library/Frameworks/Python.framework/Versions/2.7 à votre PATH fichier d'environnement. Selon le shell que vous utilisez, l'un des fichiers suivants peut avoir été modifié : ~/.bash_login , ~/.bash_profile , ~/.cshrc , ~/.profile , ~/.tcshrc , ~/.zshrc et/ou ~/.zprofile .

211 votes

Merci pour l'info Ned, je l'ai supprimé, et j'ai découvert à la dure qu'il faut réinstaller Mac OS X. Je laisse ceci ici pour toute personne qui pense la même chose que moi. Ne supprimez pas Python dans /System/Library/Frameworks/... Aucune de vos applications ne fonctionnera et vous devrez réinstaller OS X.

54 votes

Python 2.7 est le Python système par défaut sur les systèmes récents, alors que sur 10.6.4 c'était 2.6 et 2.7 était installé par l'utilisateur. NE DÉSINSTALLEZ PAS 2.7 D'UN SYSTÈME OS X RÉCENT.

44 votes

Les étapes ci-dessus n'enlèvent pas le système Python de l'ordinateur. cualquier version d'OS X. Les Python du système sont installés dans /System/Library/Frameworks (que vous ne devez jamais modifier), et non /Library/Frameworks .

79voto

conehead Points 441

Celui-là marche :

cd /usr/local/bin/
ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' | awk '{print $9}' | tr -d @ | xargs rm

Description : Il liste tous les liens, supprime @ et les supprime ensuite.

1 votes

J'ai essayé toutes les réponses fournies ici, et c'est celle-là qui a finalement fait l'affaire.

31voto

Gabriel Mazetto Points 500

Si vous l'avez installé à l'aide du programme d'installation PKG, vous pouvez le faire :

pkgutil --pkgs

ou mieux :

pkgutil --pkgs | grep org.python.Python

ce qui donnera quelque chose comme :

org.python.Python.PythonApplications-2.7
org.python.Python.PythonDocumentation-2.7
org.python.Python.PythonFramework-2.7
org.python.Python.PythonProfileChanges-2.7
org.python.Python.PythonUnixTools-2.7

vous pouvez maintenant sélectionner les paquets que vous allez délier (supprimer).

Il s'agit de la documentation sur la déliaison :

 --unlink package-id
             Unlinks (removes) each file referenced by package-id. WARNING: This command makes no attempt to perform reference counting or dependency analy-
             sis. It can easily remove files required by your system. It may include unexpected files due to package tainting. Use the --files command first
             to double check.

Dans mon exemple, vous allez taper

pkgutil --unlink org.python.Python.PythonApplications-2.7
pkgutil --unlink org.python.Python.PythonDocumentation-2.7
pkgutil --unlink org.python.Python.PythonFramework-2.7
pkgutil --unlink org.python.Python.PythonProfileChanges-2.7
pkgutil --unlink org.python.Python.PythonUnixTools-2.7

ou en une seule ligne :

pkgutil --pkgs | grep org.python.Python | xargs -L1 pkgutil -f --unlink

Important : --unlink n'est plus disponible à partir de Lion (à partir de Q1`2014 qui inclurait Lion, Mountain Lion, et Mavericks). Si quelqu'un qui vient à ces instructions essayer de l'utiliser avec Lion, devrait essayer plutôt de l'adapter avec ce que ce post dit : https://wincent.com/wiki/Uninstalling_packages_(.pkg_files)_sur_Mac_OS_X

4 votes

Malheureusement, selon pkgutil ne supprimera pas tous les fichiers installés par l'installateur Python car certains d'entre eux sont créés lors de l'installation postflight scripts et, en tant que tels, ne sont pas enregistrés.

8voto

minhas23 Points 365

Il n'est pas nécessaire de désinstaller les anciennes versions de python.

Installez simplement la nouvelle version, par exemple python-3.3.2-macosx10.6.dmg. et changez le lien logiciel de python en python3.3 nouvellement installé.

Vérifiez le chemin de python par défaut et de python3.3 avec les commandes suivantes

"quel python" et "quel python3.3".

puis supprimez la liaison logicielle existante de python et faites-la pointer vers python3.3.

13 votes

Merci, mais cela ne répond pas à ma question. La question n'est pas de savoir si je dois désinstaller une ancienne version de python afin d'installer une nouvelle version.

2 votes

Cela semble être l'approche la plus sûre, car pour moi, jouer avec ce que le système d'exploitation met sur la machine ne se passe généralement pas très bien. Moi aussi, j'ai "obtenu le paquet d'installation à partir de python.org "après avoir rencontré des problèmes de syntaxe à partir d'instructions python3 dans un shell python2. Ma première pensée a été de supprimer python2 et d'utiliser python3 à la place. Cependant, les messages précédents ont confirmé les dangers de cette action. C'était la meilleure solution pour moi et elle suit l'idée d'"utiliser des liens pour détourner le comportement". En outre, le shell python3 était déjà installé, il suffisait de taper "python3" au lieu de "python" à l'invite.

4 votes

@minhas23 Comment supprimer le lien logiciel et en créer un nouveau ?

0voto

Robert Avill Points 1

Il devrait y avoir un bouton de désinstallation de python dans la section qui contient le ralenti et autres. Utilisez-le et il devrait disparaître.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X