温馨提示×

linux yum如何锁定

小樊
41
2026-09-15 22:13:34
栏目: 智能运维

在 Linux 中,使用 yum(CentOS / RHEL 6/7) 时,“锁定”通常有几种含义,下面分情况说明:


一、锁定 yum 本身,防止被人同时使用(yum 锁)

yum 本身在运行时会自动加锁:

  • 锁文件位置:
    /var/run/yum.pid
    
  • 如果已有 yum 在运行,再执行会报错:
    Another app is currently holding the yum lock
    

强制解除锁(不推荐,除非确认安全):

rm -f /var/run/yum.pid

二、锁定某个软件包,防止被更新(最常见需求)

方法 1:使用 yum-plugin-versionlock(推荐)

安装插件

yum install yum-plugin-versionlock

锁定指定包(例如 nginx)

yum versionlock nginx

查看已锁定的包

yum versionlock list

解除锁定

yum versionlock delete nginx

清除所有锁定

yum versionlock clear

✅ 效果:
yum update 不会更新被锁定的包


方法 2:使用 exclude(限制更新)

编辑 yum 配置文件:

vi /etc/yum.conf

添加:

exclude=nginx* httpd* php*

❌ 缺点:不能锁定具体版本,只能禁止更新


三、防止 yum 被普通用户执行(权限锁定)

chmod 700 /usr/bin/yum

或只允许 root 使用(默认就是)


四、系统级防止误用(只读 / 审计)

  • 使用 auditd 监控 yum 使用
  • 使用 sudo 限制命令
  • 使用配置管理(Ansible / SaltStack)统一管控

总结

需求 方法
防止包被更新 yum versionlock
禁止某类包更新 exclude=
防止 yum 并发 自动锁 /var/run/yum.pid
限制用户使用 权限 / sudo

如果你是 CentOS 8+ / Rocky / Alma,请告诉我,我可以提供 dnf 版本 的锁定方法。

0