RHEL 8 中不再默認(rèn) Python 版本。包括 RHEL 在內(nèi)的大多數(shù) Linux 發(fā)行版,用戶除非離開系統(tǒng)的包管理器環(huán)境,否則一般是被默認(rèn)限定在系統(tǒng)提供的 Python 版本中。對(duì)于像 Ruby、Node、Perl 與 PHP 在內(nèi)的許多工具來說這都是習(xí)以為常的,但是 Python 的情況會(huì)比較復(fù)雜一些,因?yàn)樵S多 Linux 工具(如 yum)都直接依賴于 Python。
根據(jù) PEP 394,目前/usr/bin/python 默認(rèn)是指 Python2,也就是 “Python”這一命令或者 Python 解釋器將默認(rèn)指向 Python2 版本。
Red Hat 官方在其開發(fā)者博客中發(fā)文稱,針對(duì)這一點(diǎn),為了改善用戶體驗(yàn),從RHEL 8 Beta 開始不再強(qiáng)調(diào)“系統(tǒng) Python”,不再默認(rèn)一個(gè) Python 版本。他們使用模塊化的 Application Streams 設(shè)計(jì),結(jié)合 Python 可多版本同時(shí)安裝的特點(diǎn),將為用戶提供多個(gè)版本Python 的選項(xiàng),并且可以從標(biāo)準(zhǔn)存儲(chǔ)庫輕松安裝到標(biāo)準(zhǔn)位置,用戶可以選擇他們想要在任何給定用戶空間中運(yùn)行的 Python 版本。
Application Streams 是在 RHEL 8 中引入的一類存儲(chǔ)庫,它提供用戶可能希望在給定用戶空間中運(yùn)行的所有應(yīng)用程序,它是在物理存儲(chǔ)庫中創(chuàng)建的多個(gè)虛擬存儲(chǔ)庫。
這種變化之后,用戶想要使用 Python,需要直接指定 Python3 或者 Python2,而不是直接 Python。同時(shí) yum install python 將返回404,因?yàn)樗瑯有枰付ò惭b版本。建議使用 yum install @python36 或 yum install @python27 安裝推薦軟件包,而如果只需要Python 二進(jìn)制文件,則可以使用 yum install python3 或 yum install python2。此外,pip 等工具也有變化,比如 Python3 將安裝在 pip3 路徑下,而不是沒有版本指定的 pip 路徑。
Red Hat 解釋,除了提升用戶體驗(yàn),這種方案還讓方便了系統(tǒng)維護(hù)人員,因?yàn)椴粫?huì)被鎖定在系統(tǒng)中老版本的 Python 上,那么他們可以自由地利用新版本的語言功能與性能改進(jìn)等優(yōu)勢(shì)。
-
python
+關(guān)注
關(guān)注
55文章
4767瀏覽量
84376
原文標(biāo)題:RHEL 8 中不再默認(rèn)系統(tǒng) Python 版本
文章出處:【微信號(hào):LinuxHub,微信公眾號(hào):Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論