1. 程式人生 > >Linux下安裝python-2.7 先zlib

Linux下安裝python-2.7 先zlib

2018-04-25 釋出

Linux下安裝python-2.7

   1.1k 次閱讀  ·  讀完需要 25 分鐘 1

安裝依賴的庫

yum -y install python-devel openssl openssl-devel gcc sqlite sqlite-devel mysql-devel libxml2-devel libxslt-devel

Python

=================================================

下載python 2.7.13

www.python.org

[[email protected] ~]# mkdir /software
[[email protected] ~]# cd /software/
[[email protected] software]# wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz
[[email protected] software]# ll
總用量 36852
-rw-r--r-- 1 root root 17076672 12月 18 04:21 Python-2.7.13.tgz -rw-r--r-- 1 root root 20656090 1月  17 16:07 Python-3.5.3.tgz

解壓檔案

[[email protected] software]# tar -zxf Python-2.7.13.tgz

進入目錄

[[email protected] software]# cd Python-2.7.13

編譯安裝

[[email protected] Python-2.7.13]# ./configure --prefix=/usr/local/python2.7 --with-threads --enable-shared
[[email protected] Python-2.7.13]# make && make altinstall

備份舊python相關命令

===> 有些版本/usr/bin/目錄下不存在pip 忽略下面第一行命令即可
[[email protected] Python-2.7.13]# mv /usr/bin/pip /usr/bin/pip_old [[email protected] Python-2.7.13]# mv /usr/bin/easy_install /usr/bin/easy_install_old [[email protected] Python-2.7.13]# mv /usr/bin/python /usr/bin/python_old

新版本python命令做軟連線,快捷使用

[[email protected] Python-2.7.13]# ln -s /usr/local/python2.7/lib/libpython2.7.so /usr/lib
[[email protected] Python-2.7.13]# ln -s /usr/local/python2.7/lib/libpython2.7.so.1.0 /usr/lib [[email protected] Python-2.7.13]# ln -s /usr/local/python2.7/bin/python2.7 /usr/bin/python [[email protected] Python-2.7.13]# ln -s /usr/local/python2.7/lib/libpython2.7.so /usr/lib64 [[email protected] Python-2.7.13]# ln -s /usr/local/python2.7/lib/libpython2.7.so.1.0 /usr/lib64

測試python是否可以正常使用

[[email protected] ~]# python
Python 2.7.13 (default, Apr 11 2017, 11:14:36) [GCC 4.4.7 20120313 (Red Hat 4.4.7-18)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> 

安裝pip

下載最新版的pip,然後安裝

[[email protected] Python-2.7.13]# cd /software/
[[email protected] software]# wget https://bootstrap.pypa.io/get-pip.py [[email protected] software]# python get-pip.py 

查詢pip的位置

[root@server2 software]# find / -name pip
/usr/local/python2.7/bin/pip

找到pip2.7的路徑,為其建立軟鏈作為系統預設的啟動版本

[[email protected] software]# ln -s /usr/local/python2.7/bin/pip /usr/bin/pip

測試pip是否可用

[[email protected] software]# pip install Pillow
Collecting Pillow
  Downloading Pillow-4.1.0-cp27-cp27m-manylinux1_x86_64.whl (5.7MB)
    100% |████████████████████████████████| 5.7MB 129kB/s Collecting olefile (from Pillow) Downloading olefile-0.44.zip (74kB) 100% |████████████████████████████████| 81kB 541kB/s Building wheels for collected packages: olefile Running setup.py bdist_wheel for olefile ... done Stored in directory: /root/.cache/pip/wheels/20/58/49/cc7bd00345397059149a10b0259ef38b867935ea2ecff99a9b Successfully built olefile Installing collected packages: olefile, Pillow Successfully installed Pillow-4.1.0 olefile-0.44

安裝easy_install

下載最新版的easy_install,然後安裝

[root@server2 software]# wget https://bootstrap.pypa.io/ez_setup.py
[root@server2 software]# python ez_setup.py 

找到easy_install的路徑,為其建立軟鏈作為系統預設的啟動版本

[[email protected] software]# ln -s /usr/local/python2.7/bin/easy_install /usr/bin/easy_install

測試easy_install是否可用

[[email protected] software]# easy_install beautifulsoup4
Searching for beautifulsoup4
Reading https://pypi.python.org/simple/beautifulsoup4/ Downloading https://pypi.python.org/packages/9b/a5/c6fa2d08e6c671103f9508816588e0fb9cec40444e8e72993f3d4c325936/beautifulsoup4-4.5.3.tar.gz#md5=937e0df0d699a1237646f38fd567f0c6 Best match: beautifulsoup4 4.5.3 Processing beautifulsoup4-4.5.3.tar.gz Writing /tmp/easy_install-OSpCW5/beautifulsoup4-4.5.3/setup.cfg Running beautifulsoup4-4.5.3/setup.py -q bdist_egg --dist-dir /tmp/easy_install-OSpCW5/beautifulsoup4-4.5.3/egg-dist-tmp-m3PXo5 zip_safe flag not set; analyzing archive contents... Moving beautifulsoup4-4.5.3-py2.7.egg to /usr/local/python2.7/lib/python2.7/site-packages Adding beautifulsoup4 4.5.3 to easy-install.pth file Installed /usr/local/python2.7/lib/python2.7/site-packages/beautifulsoup4-4.5.3-py2.7.egg Processing dependencies for beautifulsoup4 Finished processing dependencies for beautifulsoup4

yum 安裝工具只支援系統自帶的python版本, 修改配置檔案使其可正常使用

檢視原版本python

[[email protected] software]# ll /usr/bin/python*
lrwxrwxrwx 1 root root   34 4月  11 11:20 /usr/bin/python -> /usr/local/python2.7/bin/python2.7
lrwxrwxrwx 1 root root  6 2月  15 14:33 /usr/bin/python2 -> python -rwxr-xr-x 2 root root 9032 8月  18 2016 /usr/bin/python2.6 ==> 這個就是系統自帶的python -rwxr-xr-x 1 root root 1418 8月  18 2016 /usr/bin/python2.6-config lrwxrwxrwx 1 root root  16 4月  11 10:47 /usr/bin/python-config -> python2.6-config -rwxr-xr-x 2 root root 9032 8月  18 2016 /usr/bin/python_old

修改配置檔案 /usr/bin/yum

#!/usr/bin/python ===> 修改為 #!/usr/bin/python2.6

測試yum是否可用

[[email protected] software]# yum -y install python-devel 已載入外掛:fastestmirror, security 設定安裝程序 Loading mirror speeds from cached hostfile * epel: mirrors.aliyun.com 包 python-devel-2.6.6-66.el6_8.x86_64 已安裝並且是最新版本 無須任何處理

好了,大功告成。

優化:編寫一鍵安裝python2.7的指令碼

由於Centos 6.x的系統預設都是python2.6 ,如果伺服器需要用2.7環境的話每臺都得手動操作升級,工作量比較大, 編寫指令碼提升效率。(Centos 7.x版本的預設的python都是2.7.5版本)

建立用於存放python指令碼的目錄

[root@server2 software]# mkdir /script/python/
[root@server2 software]# cd /script/python/

由於國外python網站下載python安裝包緩慢,可以提前下載下來,和install_py27.sh放在一起,在指令碼中直接解壓本地檔案進行安裝,我已經上傳到網盤
點選我下載

開始編寫指令碼 install_py27.sh

#!/bin/sh 
# __author__ = 'junxi'

# This script is used by fast installed python2.7 ......
# write by 2017/04/11

echo "##############start run install for python2.7 script############" yum -y install python-devel openssl openssl-devel gcc sqlite sqlite-devel mysql-devel libxml2-devel libxslt-devel mkdir /software mv Python-2.7.13.tgz /software cd /software tar -zxf Python-2.7.13.tgz cd Python-2.7.13/ ./configure --prefix=/usr/local/python2.7 --with-threads --enable-shared make make altinstall mv /usr/bin/pip /usr/bin/pip_old mv /usr/bin/easy_install /usr/bin/easy_install_old mv /usr/bin/python /usr/bin/python_old ln -s /usr/local/python2.7/lib/libpython2.7.so /usr/lib ln -s /usr/local/python2.7/lib/libpython2.7.so.1.0 /usr/lib ln -s /usr/local/python2.7/bin/python2.7 /usr/bin/python ln -s /usr/local/python2.7/lib/libpython2.7.so /usr/lib64 ln -s /usr/local/python2.7/lib/libpython2.7.so.1.0 /usr/lib64 cd /software wget https://bootstrap.pypa.io/get-pip.py python get-pip.py ln -s /usr/local/python2.7/bin/pip /usr/bin/pip echo "############更換pip源為國內淘寶源##########" mkdir /root/.pip/ touch /root/.pip/pip.conf cat >> /root/.pip/pip.conf << EOF [global] index-url=http://mirrors.aliyun.com/pypi/simple/ [install] trusted-host=mirrors.aliyun.com EOF pip install Pillow sed -i 's#\/usr/bin/python#\/usr/bin/python2.6#g' /usr/bin/yum yum -y install python-devel echo 'the install script is the end......'

把Python-2.7.13.tgz檔案和install_py27.sh指令碼下載下來,放在同一個目錄下:
執行下面命令進行安裝

/bin/sh install_py27.sh

安裝完成後執行python檢視版本