CentOS 6.X 自带的Python版本是 2.6 , 但是很多主流框架和第三方依赖包已经开始逐步放弃维护2.6版本了,况且如果一个全新的业务系统还是用Python2.6跑的话,你都不好意思说是搞Python的,为了顺利升级到Python2.7,笔者根据网上资料整理了升级步骤和过程中遇到的问题。
环境准备
更新系统和开发工具集
yum -y update
yum groupinstall "Development tools"
另外还需要安装 python 工具需要的额外软件包 SSL, bz2, zlib
sudo yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel
源码安装Python 2.7.x
wget http://www.python.org/ftp/python/2.7.8/Python-2.7.8.tar.xz
xz -d Python-2.7.8.tar.xz
tar -xvf Python-2.7.8.tar
安装详情
# 进入目录:
cd Python-2.7.8
# 运行配置 configure:
./configure --prefix=/usr/local
# 编译安装:
make
make altinstall
# 检查 Python 版本:
[root@VM_centos ~]# python2.7 -V
Python 2.7.8
设置 PATH
为了我们能够方便的使用Python,将新版本的Python建立软连接
ln -s /usr/local/bin/python2.7 /usr/bin/python
# 检查
[root@VM_centos ~]# python -V
Python 2.7.8
[root@VM_centos ~]# which python
/usr/bin/python
安装 setuptools
#获取软件包
wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-1.4.2.tar.gz
# 解压:
tar -xvf setuptools-1.4.2.tar.gz
cd setuptools-1.4.2
# 使用 Python 2.7.8 安装 setuptools
python2.7 setup.py install
安装 PIP
curl https://bootstrap.pypa.io/get-pip.py | python2.7 -
启动pip的时候如果报错:
pkg_resources.DistributionNotFound: The 'pip==7.1.0' distribution was not found and is required by the application
检查目录:
cd /usr/local/lib/python2.7/site-packages && ls
查看目录下是否有pip-7.1.0.dist-info,如果没有把它改成pip-7.1.0.dist-info
修复 yum 工具
此时yum应该是失效的,因为此时默认python版本已经是2.7了。而yum需要的是2.6,修改:
[root@dbmasterxxx ~]# which yum
/usr/bin/yum
#修改 yum中的python
vi /usr/bin/yum
将第一行 #!/usr/bin/python
改为 #!/usr/bin/python2.6
安装pycurl报错:
could-not-run-curl-config-errno-2-no-such-file-or-directory-when-installing
Debian:
sudo apt-get install libcurl4-openssl-dev
apt-get install libcurl4-gnutls-dev
CentOS:
yum install libcurl-devel
python3 安装教程: http://ask.xmodulo.com/install-python3-centos.html 添加 /usrl/local/bin 到 $PATH 环境变量
vim ~/.bash_profile or ~/.bashrc
PATH=$PATH:$HOME/bin:/usr/local/bin
关注公众号「Python之禅」,回复「1024」免费获取Python资源