紅帽企業版 linux(RHEL)和它的社區版分支——CentOS,提供10年的生命周期,這意味著 RHEL/CentOS 的每個版本會提供長達10年的安全更新。雖然這么長的生命周期為企業用戶提供了迫切需要的系統兼容性和可靠性,但也存在一個缺點:隨著底層的 RHEL/CentOS 版本接近生命周期的結束,核心應用和運行時環境變得陳舊過時。例如 CentOS 6.5,它的生命周期結束時間是2020年11月30日,其所攜帶的 Python 2.6.6和 MySQL 5.1.73,以今天的標準來看已經非常古老了。
另一方面,在 RHEL/CentOS 上試圖手動升級開發工具鏈和運行時環境存在使系統崩潰的潛在可能,除非所有依賴都被正確解決。通常情況下,手動升級都是不推薦的,除非你知道你在干什么。
Software Collections(SCL)源出現了,以幫助解決 RHEL/CentOS 下的這種問題。SCL 的創建就是為了給 RHEL/CentOS 用戶提供一種以方便、安全地安裝和使用應用程序和運行時環境的多個(而且可能是更新的)版本的方式,同時避免把系統搞亂。與之相對的是第三方源,它們可能會在已安裝的包之間引起沖突。
最新的 SCL 提供了:
Python 3.3 和 2.7
PHP 5.4
Node.js 0.10
Ruby 1.9.3
Perl 5.16.3
MariaDB 和 MySQL 5.5
Apache httpd 2.4.6
在這篇教程的剩余部分,我會展示一下如何配置 SCL 源,以及如何安裝和啟用 SCL 中的包。
配置 SCL 源
SCL 可用于 CentOS 6.5 及更新的版本。要配置 SCL 源,只需執行:
從 SCL 中安裝和啟用包
既然你已配置好了 SCL,你可以繼續并從 SCL 中安裝包了。
你可以搜索 SCL 中的包:
繼續,就像通常安裝包那樣使用 yum 安裝:
例如,如果在安裝 python33 包后檢查默認的 python 版本,你會發現默認的版本并沒有改變:
簡而言之,SCL 有幾分像 Python 的虛擬環境,但更通用,因為你可以為遠比 Python 更多的應用啟用/禁用 SCL 會話。
新聞熱點
疑難解答