CentOS6.8 安裝python2.7,pip以及yum

haoorhuai發表於2018-10-11

  由於CentOS6.8裡自帶的yum所依賴的python是2.6.66版本,但是安裝pip至少要求python是2.7版本,因而原有的2.6並不能解除安裝,又得安裝新的2.7.之前安裝的時候強制解除安裝了2.6導致無法識別yum模組,進而又重新安裝了一遍yum。第一部分是介紹了正常情況下安裝python2.7,第二部分是安裝pip,第三部分是重新安裝yum的步驟以及相關可能出現的問題。

  一,安裝python2.7

  參考部落格:

  CentOS 6.9安裝Python2.7.13 – 特里 – 部落格園, 

  CentOS升級Python2.6到Python2.7並安裝pip – SXY的部落格 – CSDN部落格

  在centos6.5環境下搭建多版本python(python2.6、python2.7、python3.5)共存環境

  (關於這個方法,我能找到的最初的部落格是這個,但可惜已經打不開了。)

  ①檢視系統版本以及python版本號 

cat /etc/redhat-release
python -V

  ②安裝配置環境

  為了防止後面提醒缺少東西,就先把這些安裝上

yum -y update
yum groupinstall `Development Tools`
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel expat-devel

  特別說明一下,如果zlib-devel沒安裝的話,後面安裝pip會有一個關於zlib的報錯。同樣要是openssl-devel沒安裝,會有WARNING – [xxxx] Load Crypto.Cipher.ARC4 Failed, Use Pure Python Instead.類似的報錯。

 ③安裝python

  python最新版本下載地址:https://www.python.org/downloads/

  python2.7.15下載地址:https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz

wget https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tgz
tar -zxvf Python-2.7.15.tgz
cd Python-2.7.15
./configure --prefix=/usr/local
make all
make altinstall
make clean

  這裡用的是make altinstall,是為了不影響原有的python,但是我安裝的時候用的是make install,後面也沒什麼影響。

ln -s /usr/local/bin/python2.7 /usr/bin/python

  將連結指向新的版本。再次查詢的python版本的時候應該就是2.7.15了

  ④解決yum的問題

vi /usr/bin/yum

  將第一行  #!/usr/bin/python  改為 #!/usr/bin/python2.6

  這樣yum也能照常用了。

  二,安裝pip

  參考網站:Installation — pip 18.1 documentation

  之前根據前面參考部落格中的方法,使用setuptools安裝pip,並沒有成功,因而這個就不再安裝setuptools了。這裡用官方給的方法就行。

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py

  我在這遇到了ssl的問題,導致在安裝完openssl後,又重灌了一次python,並且配置命令改成了

./configure --with-ssl

  其他的一些問題官網也有介紹。

  三、安裝yum

  參考部落格:centos 解除安裝python和yum之後的解決辦法 – 風雪之殤 – 部落格園

  由於之前的失誤解除安裝了python2.6,導致沒法使用yum。我試了下,哪怕重新裝會python2.6也沒用。出現的問題和上面部落格中提及的一樣。no module named yum。

  ①解除安裝python與yum

rpm -qa|grep python|xargs rpm -e --allmatches --nodeps
whereis python|xargs rm -fr

rpm -qa|grep yum|xargs rpm -e --allmatches --nodeps
rm -rf /etc/yum.repos.d/*
whereis yum|xargs rm -fr

  ②安裝python

  在參考部落格裡面給出的映象站中,現在已經不再提供6.9及其以前的rpm包了,推薦使用這個:http://vault.centos.org/6.8/os/x86_64/Packages/ 。其中6.8為centos的版本號,x86_64為64位系統

mkdir /usr/local/src/python
cd /usr/local/src/python
wget http:
//vault.centos.org/6.8/os/x86_64/Packages/python-2.6.6-64.el6.x86_64.rpm wget http://vault.centos.org/6.8/os/x86_64/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm wget http://vault.centos.org/6.8/os/x86_64/Packages/python-pycurl-7.19.0-9.el6.x86_64.rpm wget http://vault.centos.org/6.8/os/x86_64/Packages/python-devel-2.6.6-64.el6.x86_64.rpm wget http://vault.centos.org/6.8/os/x86_64/Packages/python-libs-2.6.6-64.el6.x86_64.rpm wget http://vault.centos.org/6.8/os/x86_64/Packages/python-urlgrabber-3.9.1-11.el6.noarch.rpm wget http://vault.centos.org/6.8/os/x86_64/Packages/rpm-python-4.8.0-55.el6.x86_64.rpm
rpm -ivh python-*   rpm-python-* 

  這有可能有已經安裝的包有了依賴關係,只需要解除安裝了重灌就好,具體的看參考部落格,我沒遇到就不寫了。

  ③安裝yum

mkdir /usr/local/src/yum
cd /usr/local/src/yum

wget http://vault.centos.org/6.8/os/x86_64/Packages/yum-3.2.29-73.el6.centos.noarch.rpm
wget http://vault.centos.org/6.8/os/x86_64/Packages/yum-metadata-parser-1.1.2-16.el6.x86_64.rpm  
wget http://vault.centos.org/6.8/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm
rpm -ivh yum-*

  ④測試

yum

  顯示出命令列表就可以了

  四、總結

  這樣應該就沒什麼了。網路上給了亂七八糟的各種各樣的,總有一款適合你。

相關文章