centos重新安裝python
1. 如何在 CentOS 6 中安裝 python3.3.5
CentOS 6自帶了Python 2.6.6(CentOS 7則自帶了Python 2.7)和一些非常好用的功能,如yum。但是,注意不要隨便升級自帶的Python以免yum不可用。 新版本將安裝在/usr/local目錄下以避免和自帶的版本沖突。
雖然「我」只在64位的CentOS 6.5進行了嘗試,但該教程應該適用於所有的CentOS 6版本(本人按此教程在CentOS 7上亦成功安裝Python3.4)。
下
面的示例命令您最好以root身份運行或者在命令前加sudo賦予許可權。但注意,若不是以root身份執行的話,make 與make
install最好分開執行,並且都在前面加sudo,連著寫,如sudo make && make install的話會在make
install過程中報許可權不足問題,因為sudo不作用於&&後面的make install。
安裝前准備
編
譯Python之前您最好先安裝一系列的開發工具和一些拓展庫,雖然不是必須的,但這樣Python才能依賴這些工具和拓展庫展示它強悍的功能。下面是利
用yum進行工具和拓展庫安裝的示例命令,直接執行即可(注意部分命令顯示不全,但可以通過移動游標查看和復制)。
yumgroupinstall"Development tools"
yuminstallzlib-develbzip2-developenssl-develncurses-develsqlite-develreadline-develtk-develgdbm-develdb4-devellibpcap-develxz-devel
該考慮的因素
在您編譯和安裝Python之前,有些東西您是應該知道或考慮的。如下。
Unicode編碼
Python
編碼問題歷史悠久,但不用過多關注,知道它目前支持Unicode編碼即可(Python3中默認的)。考慮到兼容性等原因,除非有特殊的理由,您最好配
置下Python 3.2和更早的版本,使其支持UTF-32編碼,雖然會增加小小的內存代價。在Python
2.7中您可以通過在configure時添加選項--enable-unicode=ucs4 進行配置,而在Python 3.2中是--with-wide-unicode選項。
Shared library(動態共享庫)
目
前大部分的linux系統自帶的Python都是以共享庫的方式編譯的,
此外,某些第三方工具例如mod_wsgi和Blender,沒有Python的共享庫還運行不了,所以,您最好還是把Python編譯成動態共享庫吧。
為了以共享庫方式編譯Python,您必須指明共享庫的路徑。您有兩種選擇:
在configure命令後面添加:LDFLAGS="-Wl,-rpath /usr/local/lib"從而將庫路徑直接編譯進Python中。
以記事本方式打開 /etc/ld.so.conf ,然後在文件最後添加新行:/usr/local/lib 。緊接著運行命令 /sbin/ldconfig 更新動態鏈接器。 添加後的文件內容在CentOS 6.5 如下:
/etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/lib
使用 「make altinstall」 而不是make install
切記,在安裝自定義版本的Python時,make altinstall命令是必須的!如果您使用一般的 make install命令,呵呵,您將會在解壓編譯的目錄下看到兩個命名一樣但版本不同的python,這有可能會導致一些意想不到的bug哦,具體是什麼作者沒說,我也不知道。
下載,編譯,安裝Python
如下命令可用於下載、編譯和安裝Python。注意,如果您打算安裝後手動修改/etc/ld.so.conf文件以更新動態鏈接器,那麼下面的 LDFLAGS 參數您就可以去掉了。
# Python 2.7.6:
wgethttp://python.org/ftp/python/2.7.6/Python-2.7.6.tar.xz
tarxfPython-2.7.6.tar.xz
cdPython-2.7.6
./configure--prefix=/usr/local--enable-unicode=ucs4--enable-sharedLDFLAGS="-Wl,-rpath /usr/local/lib"
make&&makealtinstall(此處切記,要麼以root運行,要麼分開執行!)
# Python 3.3.5:
wgethttp://python.org/ftp/python/3.3.5/Python-3.3.5.tar.xz
tarxfPython-3.3.5.tar.xz
cdPython-3.3.5
./configure--prefix=/usr/local--enable-sharedLDFLAGS="-Wl,-rpath /usr/local/lib"
make&&makealtinstall(此處切記,要麼以root運行,要麼分開執行!)
執行上述命令之後,您可以在/usr/local/bin/python2.7或 /usr/local/bin/python3.3中找到新安裝的Python。而Python 2.6.6則可能在/usr/bin/python, /usr/bin/python2或 /usr/bin/python2.6找到。
下載和安裝Setuptools + pip
Setuptools早已取代 Distribute成為Python官方的拓展包管理器,以用於從Python Package Index安裝拓展功能包。 不同版本的Python需要的Setuptools版本不同。建議您也通過Setuptools安裝 pip,它提供了一些額外在安裝拓展功能包時很有用的功能。
以下的命令可用於安裝最新版Setuptools 和 pip。
# First get the setup script for Setuptools:
wgethttps://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py
# Then install it for Python 2.7 and/or Python 3.3:
python2.7ez_setup.py
python3.3ez_setup.py
# Now install pip using the newly installed setuptools:
easy_install-2.7pip
easy_install-3.3pip
# With pip installed you can now do things like this:
pip2.7install[packagename]
pip2.7install--upgrade[packagename]
pip2.7uninstall[packagename]
安裝的拓展功能包在/usr/local/lib/pythonX.Y/site-packages/中可以找到(X.Y是Python的版本號)。
接下來幹嘛?
如果您使用 Python 2.7,強烈建議您安裝virtualenv並學會使用它,它可用於創建獨立的 Python 環境。如果您使用 Python 3.3的話就可以省心些,它已被內置了。
不
同的 Python 運行環境(也叫沙盒) 可以有自己的 Python
版本和拓展功能包,就是說不同的Python安裝和運行的目錄不同,也可以為每個版本的Python安裝對應的名稱一樣但版本不同的拓展包。
這在開發多個功能不同的項目或在同一個項目中需要用到不同版本的Python是會很有用的。
創建您第一個獨立的Python環境
# Install virtualenv for Python 2.7 and create a sandbox called my27project:
pip2.7installvirtualenv
virtualenv-2.7my27project
# Use the built-in pyvenv program in Python 3.3 to create a sandbox called my33project:
pyvenv-3.3my33project
# Check the system Python interpreter version:
python--version
# This will show Python 2.6.6
# Activate the my27project sandbox and check the version of the default Python interpreter in it:
sourcemy27project/bin/activate
python--version
# This will show Python 2.7.6
deactivate
# Activate the my33project sandbox and check the version of the default Python interpreter in it:
sourcemy33project/bin/activate
python--version
# This will show Python 3.3.5
deactivate
2. centos7 怎麼裝python3
去官網下載編譯安裝包或者直接執行以下命令下載
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
解壓 tar -xvJf Python-3.6.2.tar.xz
切換進入 cd Python-3.6.2
編譯安裝
./configure prefix=/usr/local/python3
make && make install
安裝完畢,/usr/local/目錄下就會有python3了
因此我們可以添加軟鏈到執行目錄下/usr/bin
ln -s /usr/local/python3/bin/python3 /usr/bin/python
可以看到軟鏈創建完成
測試安裝成功了沒,執行
python -V 看看輸出的是不是python3的版本
執行python2 -V 看到的就是python2的版本
因為執行yum需要python2版本,所以我們還要修改yum的配置,執行:
vi /usr/bin/yum
把#! /usr/bin/python修改為#! /usr/bin/python2
同理 vi /usr/libexec/urlgrabber-ext-down 文件裡面的
#! /usr/bin/python 也要修改為#! /usr/bin/python2
這樣python3版本就安裝完成;同時python2也存在
python -V 版本3
python2 -V 版本2
3. 如何在centos安裝python
更新python千萬不要把老版本的刪除!新老版本是可以共存的,很多基本的命令、軟體包都要依賴預裝的老版本python的,比如yum。
[root@localhost ~]# wget Python-2.7.11.tgz
[root@localhost ~]# tar -zxvf Python-2.7.11.tgz
[root@localhost ~]# cd Python-2.7.11
[root@localhost ~]# make
[root@localhost ~]# make install //默認安裝到 /usr/local/lib/python2.7下
[root@localhost ~]# python -c "from distutils.sysconfig import get_python_lib; print (get_python_lib())"
/usr/local/lib/python2.7/site-packages
[root@localhost ~]# mv /usr/bin/python /usr/bin/python_old //修改舊的python版本為python_old
[root@localhost ~]# ln -s /usr/local/bin/python2.7 /usr/bin/python //建立軟連接指向到當前系統默認python命令的bin目錄,讓系統使用新版本python
補充:默認的python成功指向3.3.0以後,yum不能正常使用,需要修改yum的配置文件。
4. 如何在Centos上安裝python3.4
0.下載前准備
需要安裝以下庫,不然會有問題。
yum-yinstallzlib-develbzip2-developenssl-develncurses-develsqlite-develreadline-develtk-develgccmake
5. 如何在CentOS6上安裝Python2.7和Python3.3
一、安裝檢查
一般在centos中都會默認裝一個python,版本不一定,如果是2.7,則安裝時只裝3.3就可以了(現在最新已經到3.6了,可以裝一個3.6版本的)
which python #查看當前centos中使用的python解釋器位置
python --version #查看當前安裝的python版本
二、python的安裝
1.wget相應的python包(https://www.python.org/downloads/source/)
如圖,右鍵-復制鏈接,就可以得到對應的包了。
1.下載get-pip.py
wgethttps://bootstrap.pypa.io/get-pip.py
2.執行命令pythonget-pip.py
3.更新,運行命令
pipinstall-Upip
6. centos7怎麼裝python3.6
安裝python3.6可能使用的依賴
# yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
下載python3.6編譯安裝
到python官網下載
下載最新版源碼,使用make altinstall,如果使用make install,在系統中將會有兩個不同版本的Python在/usr/bin/目錄中。這將會導致很多問題,而且不好處理。
# wgethttps://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
# tar -xzvf Python-3.6.0.tgz -C /tmp
# cd /tmp/Python-3.6.0/
把Python3.6安裝到 /usr/local 目錄
# ./configure --prefix=/usr/local
# make
# make altinstall
python3.6程序的執行文件:/usr/local/bin/python3.6
python3.6應用程序目錄:/usr/local/lib/python3.6
pip3的執行文件:/usr/local/bin/pip3.6
pyenv3的執行文件:/usr/local/bin/pyenv-3.6
更改/usr/bin/python鏈接
# cd/usr/bin
# mv python python.backup
# ln -s /usr/local/bin/python3.6 /usr/bin/python
# ln -s /usr/local/bin/python3.6 /usr/bin/python3
更改yum腳本的python依賴
# cd /usr/bin
# ls yum*
yum yum-config-manager yum-debug-restore yum-groups-manager
yum-builddep yum-debug-mp yumdownloader
更改以上文件頭為
#!/usr/bin/python 改為 #!/usr/bin/python2
修改gnome-tweak-tool配置文件
# vi /usr/bin/gnome-tweak-tool
#!/usr/bin/python 改為 #!/usr/bin/python2
修改urlgrabber配置文件
# vi /usr/libexec/urlgrabber-ext-down
#!/usr/bin/python 改為 #!/usr/bin/python2
7. centos怎麼安裝python
1、現在主要有python2.7.14或3.6.2
2、編譯安裝步驟
tar zxf Python-2.7.14.tgz
cd Python-2.7.14
./configure –prefix=/usr/local/python2.7
make
make install
3、創建鏈接
ln -s /usr/local/python2.7/bin/python2.7 /usr/bin
4、測試
#!/usr/bin/python2.7
print "hello world."
8. centos 怎麼安裝python3.5
centos可以使用源安裝的方式安裝python3.4
sudoyuminstallepel-release-y
sudoyumupdate
sudoyuminstallpython34
或者下載python的tar包,tar解壓,configure設置,make編譯,make install安裝
流程如下
wget--quiethttps://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz
tarzxvfPython-3.5.1.tgz
cdPython-3.5.1
./configure
sudomake
sudomakeinstall
9. centOS如何升級python
centOS下升級python版本的詳細步驟
1、可利用linux自帶下載工具wget下載,如下所示:
筆者安裝的是最小centos系統,所以使用編譯命令前,必須安裝wget服務,讀者如果安裝的是界面centos系統,或者使用過編譯工具則可跳過安裝wget,直接進行下邊的編譯步驟。
wget http://www.python.org/ftp/python/3.3.0/Python-3.3.0.tgz
2、下載完成後到下載目錄下,解壓
tar -xzvf Python-3.3.0.tgz
cd Python-3.3.0
相關推薦:《Python教程》
4、在編譯前先在/usr/local建一個文件夾python3(作為python的安裝路徑,以免覆蓋老的版本)
mkdir /usr/local/python3 (此處新建文件夾用mkdir,如果是新建文件則用touch)
5、開始編譯安裝
筆者安裝的是最小centos系統,所以使用編譯命令前,必須安裝編譯套件gcc,讀者如果安裝的是界面centos系統,或者使用過編譯工具則可跳過安裝gcc,直接進行下邊的編譯步驟
./configure --prefix=/usr/local/python3
make
make install
6、此時沒有覆蓋老版本,再將原來/usr/bin/python鏈接改為別的名字(筆者保留了兩個版本的,一個python,一個python3,所以第6步筆者略過,把第7步的鏈接後名字改為python3,讀者可按正常步驟,實現的效果相同)
mv /usr/bin/python /usr/bin/python_old2
7、再建立新版本python的鏈接
ln -s /usr/local/python3/bin/python3 /usr/bin/python
8、這個時候輸入
python -V
9、就會顯示出python的新版本信息
[idolaoxu@localhost home]# python -V
Python 3.3.0
PS:如果不建立新安裝路徑python3,而是直接默認安裝,則安裝後的新python應該會覆蓋linux下自帶的老版本,也有可能不覆蓋,具體看安裝過程了,這個大家可以自己試驗下,當然如果還想保留原來的版本,那麼這種方法最好不過了。