1. 问题背景
Centos6.5默认自带的python环境是2.6.6,python的一些特性没法使用,所以要对python进行升级,借鉴了网上其他同学的安装教程,但是还是遇到一些坑,不是那木顺利,顺便把遇到的问题写下来,希望遇到相同问题的同学能很快解决。
2. 安装Python2.7.9
2.1 下载安装包
wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz
2.2 解压、编译、安装
# 解压下载的安装包
tar zxvf Python-2.7..tgz #进入目录
cd Python-2.7. #设置安装路径
./configure --prefix=/usr/local/python/python2. #编译
make #安装
make install
2.3 修改系统环境
上面执行成功后pytho2.7.9算是安装成功了,但是便于使用则需要把/usr/bin/下的python命令替换成python2.7,
#备份原先的python命令
mv /usr/bin/python /usr/bin/python.bak #将python2..9的命令指向/usr/bin目录下
ln -s /usr/local/python/python2./bin/python2. /usr/bin/python #检查是否替换成功,成功的话如下图所示
python -V
2.4 修改yum
此时python可以用了,但是你会发现yum已经没法用了,yum是采用的python2.6的版本,所以要改一下yum的配置
vim /usr/bin/yum
#看一下yum是否又可以正常工作了
yum list
3. 安装pip
既然安装了python,pip自然是需要的了,pip对一些库的安装还是很方便的,当然我就是在这里与到了坑,安装pip的时候失败了。
# 下载get-pip
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py #安装pip
python get-pip.py
出现了如下错误,会重试好几次
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
3.1 解决问题
# 检查openssl,是不是有两个,如果是一个的话,看是不是少了openssl-devel
rpm -aq|grep openssl # 安装openssl-devel
yum install openssl-devel -y # 再次检查,下图正常
rpm -aq|grep openssl
3.2 重新编译执行安装Python2.7.9
#进入目录
cd Python-2.7. #设置安装路径 注意这里加了--with-ssl
./configure --prefix=/usr/local/python/python2. --with-ssl #编译
make #安装
make install
3.3 重新安装pip
#安装pip
python get-pip.py
安装成功,可以用了,在python的安装目录下就可以看到pip了
借鉴了如下文章: