红帽企业版linux(RHEL)和它的社区版分支——CentOS,提供10年的生命周期,这意味着RHEL/CentOS的每个版本会提供长达10年的安全更新。虽然这么长的生命周期为企业用户提供了迫切需要的系统兼容性和可靠性,但也存在一个缺点:随着底层的RHEL/CentOS版本接近生命周期的结束,核心应用和运行时环境变得陈旧过时。例如CentOS6.5,它的生命周期结束时间是2020年11月30日,其所携带的Python2.6.6和MySQL5.1.73,以今天的标准来看已经非常古老了。
另一方面,在RHEL/CentOS上试图手动升级开发工具链和运行时环境存在使系统崩溃的潜在可能,除非所有依赖都被正确解决。通常情况下,手动升级都是不推荐的,除非你知道你在干什么。
SoftwareCollections(SCL)源出现了,以帮助解决RHEL/CentOS下的这种问题。SCL的创建就是为了给RHEL/CentOS用户提供一种以方便、安全地安装和使用应用程序和运行时环境的多个(而且可能是更新的)版本的方式,同时避免把系统搞乱。与之相对的是第三方源,它们可能会在已安装的包之间引起冲突。
最新的SCL提供了:
Python3.3和2.7
PHP5.4
Node.js0.10
Ruby1.9.3
Perl5.16.3
MariaDB和MySQL5.5
Apachehttpd2.4.6
在这篇教程的剩余部分,我会展示一下如何配置SCL源,以及如何安装和启用SCL中的包。
配置SCL源
SCL可用于CentOS6.5及更新的版本。要配置SCL源,只需执行:
复制代码