美文网首页
Python 2.6 升级至 Python 2.7 的实践心得

Python 2.6 升级至 Python 2.7 的实践心得

作者: 王奥OX | 来源:发表于2017-04-27 08:57 被阅读93次

    前言

    CentOS 6.8 安装 Python 2.7.13,因为软件版本上的需求所以考虑将 Python 升级至 2.7.13,加上生产环境还是以 RHEL 6 为主,互联网自动化运维平台大多数也推荐以Python 2.7.x + CentOS 6.x 来操作,选择 Python 2 还是 Python 3 也没有定论,找到适合的搭配即可。

    Python 2.6 升级至 Python 2.7 的实践心得

    更新历史

    2017年04月26日 - 初稿

    阅读原文 - https://wsgzao.github.io/post/python-2-6-update-to-2-7/

    扩展阅读

    Python - https://www.python.org/
    PyPI - https://pypi.python.org/pypi
    pip - https://pip.pypa.io/en/stable/user_guide/#configuration


    简单安装

    因为Python 2.7.13以后版本会自动完善yum配置,所以不必参考以前的网上文章去修改其他地方

    # 查看当前系统中的 Python 版本,返回 Python 2.6.6 为正常
    python --version
    
    Python 2.6.6
    
    # 检查 CentOS 版本,返回 CentOS release 6.8 (Final) 为正常
    cat /etc/redhat-release
    
    CentOS release 6.8 (Final)
    
    # 安装所有的开发工具包
    yum groupinstall -y "Development tools"
    # 安装其它的必需包
    yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel
    
    # 下载、编译和安装 Python 2.7.13
    #wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz
    tar zxf Python-2.7.13.tgz
    cd Python-2.7.13
    ./configure
    make && make install
    
    # 查看新的 Python 版本,返回 Python 2.7.13 为正常
    python --version
    
    Python 2.7.13
    
    

    ansible离线安装实践

    这里利用了一些内网离线安装ansible的小技巧,相关文件我会上传至网盘

    # Install Python
    tar xf Python-2.7.13.tgz
    cd Python-2.7.13
    ./configure
    make
    make install
    
    # ImportError: No module named six.moves
    tar xf six-1.10.0.tar.gz
    cd six-1.10.0
    python setup.py install
    cd ..
    # ImportError: No module named packaging.version
    tar xf packaging-16.8.tar.gz
    cd packaging-16.8
    python setup.py install
    cd ..
    # ImportError: No module named pyparsing
    tar xf pyparsing-2.2.0.tar.gz
    cd pyparsing-2.2.0
    python setup.py install
    cd ..
    # ImportError: No module named appdirs
    tar xf appdirs-1.4.3.tar.gz
    cd appdirs-1.4.3
    python setup.py install
    cd ..
    # Install Setuptools
    unzip setuptools-34.2.0.zip
    cd setuptools-34.2.0
    python setup.py install
    cd ..
    # Install pip
    tar xf pip-9.0.1.tar.gz
    cd pip-9.0.1
    python setup.py install
    cd ..
    
    # pip 离线下载依赖包
    pip install -d ~/tmp/ ansible
    pip install -d ~/tmp/ ansible-cmdb
    
    # pip 离线安装
    pip install ansible --index-url=http://172.31.197.1:7000/simple/ --trusted-host=172.31.197.1
    pip install ansible-cmdb --index-url=http://172.31.197.1:7000/simple/ --trusted-host=172.31.197.1
    
    # 查看安装好的版本
    [root@ansible-wangao ansible]# pip -V
    pip 9.0.1 from /usr/local/lib/python2.7/site-packages/pip-9.0.1-py2.7.egg (python 2.7)
    
    [root@ansible-wangao ansible]# ansible --version
    ansible 2.3.0.0
      config file = /etc/ansible/ansible.cfg
      configured module search path = Default w/o overrides
      python version = 2.7.13 (default, Apr 25 2017, 17:19:23) [GCC 4.4.7 20120313 (Red Hat 4.4.7-17)]
    
    [root@ansible-wangao ansible]# ansible-cmdb --version
    ansible-cmdb v1.20
    
    # 更换豆瓣pip源
    vim  $HOME/.pip/pip.conf
    
    [global]
    index-url = https://pypi.doubanio.com/simple/
    [install]
    
    trusted-host=pypi.doubanio.com
    
    

    Windows 安装 Python 2.7.x

    Windows下安装扩展包可能没有想象中那么顺利,遇到安装不上的包推荐去下面这个网址看看

    http://www.lfd.uci.edu/~gohlke/pythonlibs/

    下载Python,如 2.7.13
    https://www.python.org/downloads/
    https://www.python.org/ftp/python/2.7.13/python-2.7.13.msi

    安装时注意勾选环境变量
    Add python.exe to Path

    安装python2.7.13默认自带pip版本为9.0.1
    PS C:\Users\Administrator> pip -V
    pip 9.0.1 from c:\python27\lib\site-packages (python 2.7)

    安装Python后升级pip
    python -m pip install --upgrade pip

    # 更换pypi国内源,运行以下python代码会自动建立pip.ini
    import os
    
    ini="""[global]
    index-url = https://pypi.doubanio.com/simple/
    [install]
    trusted-host=pypi.doubanio.com
    """
    pippath=os.environ["USERPROFILE"]+"\\pip\\"
    
    if not os.path.exists(pippath):
        os.mkdir(pippath)
    
    with open(pippath+"pip.ini","w+") as f:
        f.write(ini)
    

    离线安装包

    http://pan.baidu.com/s/1o7J8QBw

    相关文章

      网友评论

          本文标题:Python 2.6 升级至 Python 2.7 的实践心得

          本文链接:https://www.haomeiwen.com/subject/zhlgzttx.html