¿Cómo desinstalar Python 2.7 en un Mac OS X 10.6.4?

Quiero eliminar completamente Python 2.7 de mi Mac OS X 10.6.4. Logré eliminar la entrada de la variable PATH revirtiendo mi .bash_profile . Pero también quiero eliminar todos los directorios, archivos, enlaces simbólicos y entradas que se instalaron con el paquete de instalación de Python 2.7. Tengo el paquete de instalación de http://www.python.org/ . ¿Qué directorios / archivos / entradas de archivos de configuración debo eliminar? ¿Hay una lista en algún lado?

No intente eliminar ningún sistema Python suministrado por Apple que se encuentre en /System/Library y /usr/bin , ya que esto puede romper su sistema operativo completo.


NOTA: Los pasos que se enumeran a continuación no afectan el sistema Python 2.7 provisto por Apple; solo eliminan un marco de Python de terceros, como los instalados por los instaladores de python.org .


La lista completa está documentada aquí . Básicamente, todo lo que necesitas hacer es lo siguiente:

  1. Elimine el framework Python 2.7 de terceros

     sudo rm -rf /Library/Frameworks/Python.framework/Versions/2.7 
  2. Eliminar el directorio de aplicaciones de Python 2.7

     sudo rm -rf "/Applications/Python 2.7" 
  3. Elimine los enlaces simbólicos, en /usr/local/bin , que apuntan a esta versión de Python. Verlos usando

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

    y luego ejecute el siguiente comando para eliminar todos los enlaces:

     cd /usr/local/bin/ ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' | awk '{print $9}' | tr -d @ | xargs rm 
  4. Si es necesario, edite sus archivos de perfil de shell para eliminar la adición de /Library/Frameworks/Python.framework/Versions/2.7 a su archivo de entorno PATH . Dependiendo de qué shell use, cualquiera de los siguientes archivos puede haber sido modificado: ~/.bash_login , ~/.bash_profile , ~/.cshrc , ~/.profile , ~/.tcshrc , y / o ~/.zprofile .

Éste funciona:

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

Descripción: Enumera todos los enlaces, elimina el carácter @ y luego los elimina.

Si lo instaló utilizando el instalador PKG, puede hacer:

 pkgutil --pkgs 

o mejor:

 pkgutil --pkgs | grep org.python.Python 

que dará salida a algo como:

 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 

ahora puede seleccionar los paquetes que va a desvincular (eliminar).

Esta es la documentación de desvinculación:

  --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. 

En mi ejemplo escribirás

 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 

o en una sola línea:

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

Importante: –unlink ya no está disponible a partir de Lion (a partir de Q1`2014 que incluiría Lion, Mountain Lion y Mavericks). Si alguien que viene a estas instrucciones intenta usarlo con lion, debería intentar adaptarlo con lo que dice esta publicación: https://wincent.com/wiki/Uninstalling_packages_(.pkg_files)_on_Mac_OS_X

Tratando de desinstalar Python con

 brew uninstall python 

no eliminará el Python instalado de forma nativa, sino la versión instalada con brew .

En lo que respecta a la eliminación de los enlaces simbólicos, encontré que esto es útil.

 find /usr/local/bin -lname '../../../Library/Frameworks/Python.framework/Versions/2.7/*' -delete 

No hay necesidad de desinstalar versiones antiguas de python.

Simplemente instale la nueva versión, por ejemplo python-3.3.2-macosx10.6.dmg, y cambie el enlace flexible de python a python3.3 recién instalado

Verifique la ruta de acceso predeterminada de python y python3.3 con los siguientes comandos

“Qué python” y “que python3.3”

luego elimine el enlace de software existente de python y apúntelo a python3.3

Onur Güzel proporciona la solución en su publicación del blog, “Desinstalar el paquete Python del OS X.

Debe escribir los siguientes comandos en el terminal:

  1. sudo rm -rf /Library/Frameworks/Python.framework
  2. cd /usr/local/bin
  3. ls -l . | grep '../Library/Frameworks/Python.framework' | awk '{print $9}' | xargs sudo rm
  4. sudo rm -rf "/Applications/Python xy"

    donde el comando xy es la versión de Python instalada. Según tu pregunta, debería ser 2.7.

En palabras de Onur:

ADVERTENCIA: Estos comandos eliminarán todas las versiones de Python instaladas con paquetes. Python proporcionado desde el sistema no se verá afectado.

Si tiene más de 1 versión de Python instalada desde python.org, ejecute nuevamente el cuarto comando, cambiando “xy” para cada versión de Python que se va a desinstalar.

Nota : Si instaló Python usando Homebrew, entonces puede seguir los siguientes pasos, de lo contrario, ¡busque otra solución!


Para desinstalar Python 2.7.10 que instaló utilizando Homebrew, simplemente puede emitir el siguiente comando:

 brew uninstall python 

Del mismo modo, si desea desinstalar Python 3 (que instaló utilizando Homebrew):

 brew uninstall --force python3