温馨提示×

yum怎么锁定版本

小樊
59
2026-08-06 04:35:06
栏目: 编程语言

CentOS / RHEL / Rocky / Alma 等使用 yum 的系统中,可以通过 yum versionlock 来锁定软件包版本,防止被升级或降级。


一、安装 versionlock 插件

yum install -y yum-plugin-versionlock

安装完成后会生成:

/etc/yum/pluginconf.d/versionlock.conf
/var/lib/yum/pluginconf.d/versionlock.list

二、锁定某个软件包版本

1️⃣ 锁定当前已安装版本(最常用)

yum versionlock add nginx

这会锁定 当前安装的 nginx 版本,以后 yum update 不会升级它。


2️⃣ 锁定指定版本

yum versionlock add httpd-2.4.6-99.el7.centos

3️⃣ 锁定多个包

yum versionlock add nginx php mysql

三、查看已锁定的包

yum versionlock list

示例输出:

nginx-1:1.20.1-10.el7

四、解除版本锁定

1️⃣ 解除单个包

yum versionlock delete nginx

2️⃣ 解除所有锁定

yum versionlock clear

五、验证是否生效

yum update

如果某个包被锁定,你会看到类似提示:

Package nginx is marked as excluded

六、手动编辑锁定文件(不推荐但可用)

vim /etc/yum/pluginconf.d/versionlock.list

格式示例:

nginx-1.20.1-10.el7.*

七、注意事项

✅ 锁定的是 RPM 包级别
✅ 不影响 rpm -Uvh 手动安装
✅ 不会阻止卸载(除非依赖被锁)
✅ 只对 yum / dnf 生效


八、CentOS 8 / Rocky / Alma(dnf)

如果是 dnf,命令几乎一样:

dnf install -y dnf-plugin-versionlock
dnf versionlock add nginx

如果你愿意,可以告诉我:

  • 系统版本(CentOS 7 / 8 / Rocky / Alma)
  • 要锁定的软件(如 kernel、docker、nginx)

我可以给你 精确命令

0