最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

修改 CentOS 6.x 上默認(rèn)Python的方法

 更新時(shí)間:2019年09月06日 08:20:12   作者:python 編程時(shí)光  
這篇文章主要介紹了修改 CentOS 6.x 上默認(rèn)Python的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

最近在工作中遇到一個(gè)問題,就是有一個(gè)功能希望在各種服務(wù)器上實(shí)現(xiàn),而服務(wù)器上的系統(tǒng)版本可能都不一樣,有的是 CentOS 6.x,有的是 CentOS 7.x 。

需要說明的一點(diǎn)是,CentOS 6.x 上的 Python 版本是 2.6.x 的,而 CentOS 7.x 上的 Python 版本是 2.7.x 的,這意味著我要實(shí)現(xiàn)的功能要適配這兩種版本的系統(tǒng)。

你可能會(huì)說,這有什么的,自己寫的時(shí)候,注意一下就好了。

事情其實(shí)沒有那么容易,我要實(shí)現(xiàn)的功能是基于一個(gè)框架進(jìn)行定制,需要修改不少的框架代碼。這個(gè)框架在不同的 Linux 版本上,是有不同的版本的,而且差異巨大,曾經(jīng)想過在 CentOS 6.x 和 CentOS 7.x 將這個(gè)框架安裝成同一個(gè)版本,最后還是失敗了,無法安裝,原因就是高版本需要 Python2.7,而 CentOS 6.x 上只有 Python2.6。

這個(gè)歷史問題一直遺留到現(xiàn)在,由于這次的功能影響到的代碼較多,如果要對兩個(gè)版本的框架分別進(jìn)行定制的話,需要花不少的時(shí)間,為了不維護(hù)兩套版本,避免浪費(fèi)多余的精力去做適配,我決定將 CentOS 6.x 上默認(rèn)的 Python2.6 升級成 Python2.7。

下面是整個(gè)升級過程,別看步驟簡單,這些精簡步驟的背后可是有不少的坑,被我踩過后,你可以直接使用了。

首先確認(rèn)下你機(jī)器上的默認(rèn)的 Python 版本

$ python -V
Python 2.6.6

$ whereis python
python: /usr/bin/python /usr/bin/python2.6 /usr/lib/python2.6 /usr/lib64/python2.6 /usr/local/bin/python /usr/include/python2.6 /usr/share/man/man1/python.1.gz

由于我們將使用編譯安裝的方式,所以要安裝下 gcc,及一些工具包。

注意一定要全部安裝,不然后面會(huì)發(fā)現(xiàn)有不少 python 的工具用不了。

比如不安裝 zlib 會(huì)無法安裝 setuptools,不裝 openssl 和 openssl-devel,會(huì)無法使用 pip 工具等

$ yum install gcc -y
$ yum groupinstall "Development tools"
$ yum install zlib-devel bzip2-devel openssl openssl-devel ncurses-devel sqlite-devel -y

如果你這里未按照我的步驟來安裝,你后面使用的時(shí)候出現(xiàn)了各種各樣的問題,不要慌,只要再回來這里,把沒安裝的包裝上,安裝完成后,你需要進(jìn)入第四步重新編譯安裝Python。

下載最新的 Python2.7.x 安裝包,解壓并進(jìn)入指定目錄

$ wget https://www.python.org/ftp/python/2.7.14/Python-2.7.14.tgz
$ tar zxvf Python-2.7.14.tgz
$ cd Python-2.7.14

配置,編譯,安裝

# --prefix 指定 python 安裝的路徑
$ ./configure --prefix=/usr/local/python/python2.7
$ make
$ make install

./configure 命令執(zhí)行完畢之后創(chuàng)建一個(gè)文件creating Makefile,供下面的make命令使用 執(zhí)行 make install 之后就會(huì)把程序安裝到我們指定的目錄中去。

Configure是一個(gè)可執(zhí)行腳本,它有很多選項(xiàng),在待安裝的源碼路徑下使用命令./configure –help輸出詳細(xì)的選項(xiàng)列表。其中 --prefix 選項(xiàng)是配置安裝的路徑,如果不配置該選項(xiàng),安裝后可執(zhí)行文件默認(rèn)放在/usr /local/bin,庫文件默認(rèn)放在 /usr/local/lib ,配置文件默認(rèn)放在 /usr/local/etc ,其它的資源文件放在 /usr /local/share 。如果配置 --prefix ,如: ./configure --prefix=/usr/local/test 可以把所有資源文件放在/usr/local/test的路徑中,不會(huì)雜亂。

用了 --prefix 選項(xiàng)的另一個(gè)好處是卸載軟件或移植軟件。當(dāng)某個(gè)安裝的軟件不再需要時(shí),只須簡單的刪除該安裝目錄,就可以把軟件卸載得干干凈凈;移植軟件只需拷貝整個(gè)目錄到另外一個(gè)機(jī)器即可(相同的操作系統(tǒng))。當(dāng)然要卸載程序,也可以在原來的make目錄下用一次 make uninstall ,但前提是make文件指定過uninstall。

查看系統(tǒng)的 Python 版本

$ python -V
Python 2.6.6

如果你查看還是 Python 2.6.6 版本,請繼續(xù)看第六步。

修改系統(tǒng)默認(rèn)的 Python 版本

查看新安裝的Python版本,當(dāng)前系統(tǒng)的Python版本,并將系統(tǒng)指向的Python從2.6.x修改為2.7.x,再次查看當(dāng)前系統(tǒng)的Python版本,已經(jīng)變更為2.7.x

# 這是我們剛安裝的 Python
$/usr/local/bin/python2.7 -V
Python 2.7.14

# 這是系統(tǒng)默認(rèn) Python
$ /usr/bin/python -V 
Python 2.6.6

# 備份原來的 Python 文件
$ mv /usr/bin/python /usr/bin/python.bak

# 建立軟鏈接,將我們剛安裝的 python2.7 做為系統(tǒng)默認(rèn)版本
ln -s /usr/local/bin/python2.7 /usr/bin/python

# 再次查看 Python 版本,已經(jīng)成功切換過來
$ python -V
Python 2.7.14

重新指定 yum 的Python版本

上面我們改了系統(tǒng)的默認(rèn) Python 版本,由于CentOS 6.x 的 yum 是基于Python2.6 的,為了不影響 yum 的使用,需單獨(dú)將yum指向python2.6版本。

編輯: vim /usr/bin/yum ,將 /usr/bin/python 改成 /usr/bin/python2.6

#!/usr/bin/python2.6

安裝 setuptools 及 pip

pip是python的安裝工具,很多python的常用工具,都可以通過pip進(jìn)行安裝。要安裝pip,首先要安裝setuptools。從這個(gè)鏈接,你可以得到相關(guān)信息: https://pypi.python.org/pypi/...

# 下載 setuptools
$ wget https://pypi.python.org/packages/ff/d4/209f4939c49e31f5524fa0027bf1c8ec3107abaf7c61fdaad704a648c281/setuptools-21.0.0.tar.gz#md5=81964fdb89534118707742e6d1a1ddb4

同樣的,進(jìn)行安裝:

$ tar vxf setuptools-21.0.0.tar.gz 
$ cd setuptools-21.0.0
$ python setup.py install

安裝完成后,下載pip。其信息在如下網(wǎng)站: https://pypi.python.org/pypi/pip

# 下載 pip
wget https://pypi.python.org/packages/41/27/9a8d24e1b55bd8c85e4d022da2922cb206f183e2d18fee4e320c9547e751/pip-8.1.1.tar.gz#md5=6b86f11841e89c8241d689956ba99ed7

同樣的,進(jìn)行安裝

$ tar vxf pip-8.1.1.tar.gz 
$ cd pip-8.1.1
$ python setup.py install

安裝完成后,執(zhí)行 pip list 查看一下安裝的包,若無異常,則一切順利?;蛘吣阋部梢栽囍惭b一下第三方包 pip install requests

總結(jié)

以上所述是小編給大家介紹的修改 CentOS 6.x 上默認(rèn)Python的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • 淺析python函數(shù)式編程

    淺析python函數(shù)式編程

    這篇文章主要介紹了python函數(shù)式編程的相關(guān)資料,幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-09-09
  • python之while循環(huán)、無限循環(huán)用法及說明

    python之while循環(huán)、無限循環(huán)用法及說明

    這篇文章主要介紹了python之while循環(huán)、無限循環(huán)用法及說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Python可視化之seborn圖形外觀設(shè)置

    Python可視化之seborn圖形外觀設(shè)置

    這篇文章主要介紹了Python可視化之seborn圖形外觀設(shè)置,本文介紹seaborn圖形外觀、圖形縮放設(shè)置.具有一的的參考價(jià)值,需要的小伙伴可以參考一下
    2022-03-03
  • tensorflow模型保存、加載之變量重命名實(shí)例

    tensorflow模型保存、加載之變量重命名實(shí)例

    今天小編就為大家分享一篇tensorflow模型保存、加載之變量重命名實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • Python實(shí)現(xiàn)生成簡單的Makefile文件代碼示例

    Python實(shí)現(xiàn)生成簡單的Makefile文件代碼示例

    這篇文章主要介紹了Python實(shí)現(xiàn)生成簡單的Makefile文件代碼示例,本文給出了兩段實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2015-03-03
  • Fiddler如何抓取手機(jī)APP數(shù)據(jù)包

    Fiddler如何抓取手機(jī)APP數(shù)據(jù)包

    Fiddler,這個(gè)是所有軟件開發(fā)者必備神器!這款工具不僅可以抓取PC上開發(fā)web時(shí)候的數(shù)據(jù)包,而且可以抓取移動(dòng)端,通過本文給大家介紹Fiddler如何抓取手機(jī)APP數(shù)據(jù)包,感興趣的朋友一起學(xué)習(xí)吧
    2016-01-01
  • Python考拉茲猜想輸出序列代碼實(shí)踐

    Python考拉茲猜想輸出序列代碼實(shí)踐

    這篇文章主要介紹了Python考拉茲猜想輸出序列代碼實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • 使用Python pip怎么升級pip

    使用Python pip怎么升級pip

    這篇文章主要介紹了使用Python pip怎么升級pip,本文給大家分享方法和實(shí)現(xiàn)步驟對python pip升級pip相關(guān)知識感興趣的朋友跟隨小編一起看看吧
    2020-08-08
  • 基于keras輸出中間層結(jié)果的2種實(shí)現(xiàn)方式

    基于keras輸出中間層結(jié)果的2種實(shí)現(xiàn)方式

    今天小編就為大家分享一篇基于keras輸出中間層結(jié)果的2種實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • Python判斷對象是否相等及eq函數(shù)的講解

    Python判斷對象是否相等及eq函數(shù)的講解

    今天小編就為大家分享一篇關(guān)于Python判斷對象是否相等及eq函數(shù)的講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-02-02

最新評論

达拉特旗| 文水县| 耒阳市| 井陉县| 云和县| 潞西市| 民丰县| 陆河县| 田林县| 巴彦县| 莆田市| 琼海市| 平谷区| 银川市| 乡城县| 比如县| 喀喇沁旗| 桦南县| 新龙县| 白银市| 临泽县| 眉山市| 繁峙县| 腾冲县| 饶河县| 肃北| 建昌县| 临潭县| 恩平市| 淮安市| 甘肃省| 隆回县| 清镇市| 珠海市| 敦煌市| 河东区| 乌苏市| 黑龙江省| 财经| 堆龙德庆县| 衡山县|