Configurar Python con CentOS Linux

Python es un lenguaje interpretado ampliamente utilizado que ha aportado profesionalismo al mundo de la codificación de aplicaciones con secuencias de comandos en Linux (y otros sistemas operativos). Donde Perl fue una vez el estándar de la industria, Python ha superado a Perl en muchos aspectos.

Algunas de las fortalezas de Python frente a Perl son:

  • Progresión rápida en el refinamiento

  • Bibliotecas que son estándar para el idioma

  • La legibilidad del código está pensada en la definición del lenguaje.

  • Muchos marcos profesionales para todo, desde el soporte de GUI hasta el desarrollo web

Python puede hacer cualquier cosa que Perl pueda hacer y, en muchos casos, de mejor manera. Aunque Perl todavía tiene su lugar entre la caja de herramientas de un administrador de Linux, aprender Python es una gran opción como conjunto de habilidades.

Los mayores inconvenientes de Python a veces están relacionados con sus fortalezas. En la historia, Python fue diseñado originalmente para enseñar programación. A veces, sus fundamentos básicos de "fácil lectura" y "hacer las cosas de la manera correcta" pueden causar complejidades innecesarias al escribir un código simple. Además, sus bibliotecas estándar han causado problemas en la transición de las versiones 2.X a 3.X.

Los scripts de Python se utilizan en realidad en el núcleo de CentOS para funciones vitales para la funcionalidad del sistema operativo. Debido a esto, es importante aislar nuestro entorno Python de desarrollo del entorno Python central de CentOS.

Para empezar, actualmente hay dos versiones de Python: Python 2.X y Python 3.X.

Ambas etapas todavía están en producción activa, aunque la versión 2.X se está acercando rápidamente a la depreciación (y lo ha estado durante algunos años). La razón de las dos versiones activas de Python fue básicamente solucionar las deficiencias de la versión 2.X. Esto requirió que se rehicieran algunas funciones básicas de la versión 3.X de una manera que no podría admitir algunos scripts de la versión 2.X

Básicamente, la mejor manera de superar esta transición es: Desarrollar para 3.X y mantenerse actualizado con la última versión 2.X para scripts heredados. Actualmente, CentOS 7.X se basa en una revisión semi-actual de la versión 2.X.

Al momento de escribir estas líneas, las versiones más actuales de Python son: 3.4.6 y 2.7.13.

No dejes que esto confunda o saque conclusiones de Python. Configurar un entorno Python es realmente bastante simple. Con los frameworks y bibliotecas de Python, esta tarea es realmente fácil de realizar.

Antes de configurar nuestros entornos Python, necesitamos un entorno sano. Para comenzar, asegurémonos de que nuestra instalación de CentOS esté completamente actualizada y de instalar algunas utilidades de construcción.

Step 1 - Actualiza CentOS.

[root@CentOS]# yum -y update

Step 2 - Instalar utilidades de compilación.

[root@CentOS]# yum -y groupinstall "development tools"

Step 3 - Instale algunos paquetes necesarios.

[root@CentOS]# yum install -y zlib-dev openssl-devel sqlite-devel bip2-devel

Ahora necesitamos instalar Python 2.X y 3.X actuales desde la fuente.

  • Descargar archivos comprimidos
  • Extraer archivos
  • Compilar código fuente

Comencemos por crear un directorio de compilación para cada instalación de Python en / usr / src /

[root@CentOS]# mkdir -p /usr/src/pythonSource

Ahora descarguemos los archivos tar de origen para cada uno:

[root@CentOS]# wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tar.xz
[root@CentOS]# wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz

Ahora necesitamos extraer cada uno del archivo.

Step 1 - Instale xz-libs y extraiga los archivos tar.

[root@CentOS]# yum install xz-libs
[root@CentOS python3]# xz -d ./*.xz
[root@CentOS python3]# ls
Python-2.7.13.tar  Python-3.6.0.tar
[root@CentOS python3]#

Step 2 - Desinstale cada instalador de su tarball.

[root@CentOS]# tar -xvf ./Python-2.7.13.tar
[root@CentOS]# tar -xvf ./Python-3.6.0.tar

Step 3 - Ingrese a cada directorio y ejecute el script de configuración.

[root@CentOS]# ./configure --prefix=/usr/local 
root@CentOS]# make altinstall

Note - Asegúrese de usar altinstally no instalar. Esto mantendrá CentOS y las versiones de desarrollo de Python separadas. De lo contrario, puede romper la funcionalidad de CentOS.

Ahora verá que comienza el proceso de compilación. Toma una taza de café y tómate un descanso de 15 minutos hasta completarlo. Dado que instalamos todas las dependencias necesarias para Python, el proceso de compilación debería completarse sin errores.

Asegurémonos de tener instalada la última versión 2.X de Python.

[root@CentOS Python-2.7.13]# /usr/local/bin/python2.7 -V 
Python 2.7.13
[root@CentOS Python-2.7.13]#

Note - Querrá prefijar la línea shebang que apunta a nuestro entorno de desarrollo para Python 2.X.

[root@CentOS Python-2.7.13]# cat ver.py  
#!/usr/local/bin/python2.7 
import sys 
print(sys.version)
[root@CentOS Python-2.7.13]# ./ver.py 
2.7.13 (default, Jan 29 2017, 02:24:08)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)]

Así, tenemos instalaciones de Python independientes para las versiones 2.X y 3.X. Desde aquí, podemos usar cada uno y utilidades comopip y virtualenv para aliviar aún más la carga de administrar los entornos de Python y la instalación de paquetes.