通过前面的学习我们知道,使用 RPM 包(或 SRPM 包)和源码包都可以实现软件的安装和升级。那么,如果要对软件进行升级,又或是安装新的软件,应该选择哪种安装方式呢?
软件安装方式的选择,涉及到的因素有很多,本节总结了以下几点建议。
通常情况下,开发商提供的软件都具有一段时间的维护期,比如说,RHEL 和 CentOS 每个版本都至少提供 5 年以上的升级期限,对我们的系统安全性来说,有极大的好处。
不仅如此,使用 yum 安装的 RPM 软件包具有容易安装、卸载和升级的特点,而且还提供查询和验证的功能,安装时更有数字证书的保护,这些无疑会使软件管理变得更轻松!
综合以上因素,建议大家安装软件的首选方式是利用系统自带的 RPM 包安装。
某些特殊软件,Linux(及其发行版)系统可能并不会提供其 RPM 软件包,例如 CentOS 不提供 NTFS 的相关模块。这种情况下,就需要我们自行去该软件官网上搜索,看是否提供有和自己 Linux 系统相匹配的 RPM 安装包。除此之外,如果官网上提供有可下载该软件不同版本的网址,可以直接将其作为 yum 源,从而实现软件的自动安装和升级。
对于有某些特殊用途的软件,开发商根本不提供 RPM 包,这里也不建议你自行制作 SRPM 包从而得到 RPM 包,毕竟多数初学者只使用一台电脑,如果你管理相同的 100 台电脑,则此方式才能凸显它的价值。
对于安装此类特殊软件,例如并发编程常会用到的 MPICH/PVM 等并行运算函数库,建议使用源码包的安装方式。
有时候可能需要使用最新版的软件,而 Linux 系统中只提供旧版。例如 CentOS 服务更多的是企业,因此对很多软件的要求是稳而不是新。如果我们就是需要安装新软件,但又担心安装新软件后无法再回到旧版软件,该怎么办呢?
这种情况下,可以使用源码包将新软件安装到 /usr/local/ 目录中,因为 Linux 系统允许同一软件的 2 个版本同时存在,且多数软件的不同版本之间不会相互干扰。唯一需要注意的是,你要确定所使用的命令作用于哪一版软件。
总的来说,使用 RPM 包安装和使用源码包安装软件各有优缺点,不过,如果有 RPM 包的话,还是建议优先选择 RPM 包安装软件,毕竟后期管理起来更方便。当然,如果软件的架构差异太大,或者无法解决软件依赖性的问题,与其花大把的时间和精力解决软件之间的依赖,不如直接使用源码包的方式安装软件。