CentOS yum可安装的软件版本范围及管理方法
CentOS yum能安装的软件版本主要由系统基础版本(如CentOS 7、CentOS 8)和配置的YUM源(官方源、第三方源如EPEL、Remi等)共同决定。以下从具体维度说明:
CentOS的软件包(RPM包)命名遵循发行版版本:主版本-编译号.系统版本的规则(如nginx-1.20.1-1.el7.x86_64),其中el7表示适用于CentOS 7系统。因此,CentOS 7只能安装标注为el7的软件包,CentOS 8只能安装el8的包,否则会因系统内核、库文件不兼容导致安装失败或运行异常。
CentOS默认的base和updates仓库包含系统基础组件(如内核、glibc、bash)和常用软件(如httpd、mysql、php)的稳定版本,通常是发行版发布时的配套版本或后续安全更新版本。例如:
若需要新版或特殊版本软件(如php 8.0、nginx 1.22),需添加第三方仓库,常见仓库及支持的版本如下:
remi-release包启用;使用以下命令可查看yum仓库中某软件的所有可用版本(包括已启用和未启用的仓库):
yum --showduplicates list 软件名 # 如 yum --showduplicates list nginx
输出示例:
nginx.x86_64 1:1.20.1-1.el7 epel
nginx.x86_64 1:1.22.0-1.el7 epel
该命令可明确知道仓库中有哪些版本可供选择。
若需安装特定版本,可通过以下方式操作:
yum install 软件名-版本号命令,如:yum install nginx-1.20.1-1.el7
*匹配主版本(如安装python3.6系列最新版):yum install python3-3.6*
--enablerepo参数启用指定仓库,如:yum install nginx-1.20.1 --enablerepo=epel
yum downgrade命令降级到指定版本,如:yum downgrade nginx-1.20.1-1.el7
若需固定软件版本(防止yum update时被升级),可安装yum-plugin-versionlock插件,然后锁定指定版本:
yum install yum-plugin-versionlock # 安装插件
yum versionlock nginx-1.20.1-1.el7 # 锁定nginx版本
锁定后,该软件将不会被自动升级,需手动解除锁定(yum versionlock delete)才能再次升级。
通过以上方法,可在CentOS中灵活使用yum安装符合系统兼容性的软件版本,满足不同场景的需求。