要锁定
linux
系统中软件包版本,可使用yum versionlock插件。具体步骤如下:1. 安装插件(若未安装):执行sudo yum install yum-plugin-versionlock;2. 锁定包版本:使用sudo yum versionlock 或指定版本号;3. 查看规则:运行sudo yum versionlock list;4. 删除规则:使用delete参数及通配符批量处理;5. 注意定期清理锁定列表、备份配置文件等事项。
在Linux系统管理中,有时候你希望某个软件包不要被意外升级,比如为了保持环境稳定或兼容性。这时候就可以用
插件来锁定特定版本的软件包。它能让你指定只允许使用某个具体版本,避免因自动更新引发问题。
安装 yum-versionlock 插件
如果你还没安装这个插件,首先要确认它是否已经存在你的系统里。大多数基于 Yum 的发行版(如 CentOS、RHEL)默认都自带了这个插件,但可能没有启用。
你可以通过下面的命令安装:
检查是否已安装:
如果没安装,可以通过以下命令安装:
安装完成后,插件会自动生效,不需要额外配置。
添加版本锁定规则
添加锁定规则是这个插件的核心功能。你可以锁定某个包的具体版本,也可以只锁定包名,这样所有当前已安装的版本都会被保留。
使用方法如下:
例如,如果你想锁定
当前安装的版本,可以运行:
如果你只想锁定某个具体的版本,可以加上版本号:
Docker Desktop(linux)
当前 Docker 最新稳定版本之一,主要针对稳定性和兼容性进行了修复优化,适合生产环境与日常开发使用。该版本继续强化 AI 开发支持、容器日志管理以及 Docker Engine 的安全能力,对 Windows/macOS/Linux 平台兼容性进行了进一步优化。
下载
执行完后,系统就会把这个规则写入
文件中。
常见操作包括:
锁定多个包:
使用通配符:
可以锁定所有以 php 开头的包
查看和删除锁定规则
锁定之后,你可能会想确认一下哪些包已经被锁定了。查看的方法很简单:
这条命令会列出所有当前生效的锁定规则。
如果你需要解除某个包的锁定,可以用
命令:
同样,你也可以使用通配符来批量删除:
需要注意的是,这些操作只是修改了
文件,并不会自动恢复已经被锁定版本的包到可更新状态。下次执行
时才会真正生效。
注意事项和使用建议
虽然
很方便,但也有一些细节容易忽略:
锁定范围要准确
:如果你只写包名而没有加版本号,那只会锁定当前已安装的版本。
定期检查锁定列表
:时间久了可能会忘记当初锁了什么,建议定期清理不必要的条目。
与配置文件同步备份
:
是关键文件,建议在做系统备份时一并保存。
不影响新安装
:锁定某个包并不会阻止你重新安装该包,只是不能升级而已。
基本上就这些。掌握这几个基本操作,就能很好地控制软件包版本更新了。
yum versionlockrpm -q yum-plugin-versionlocksudo yum install yum-plugin-versionlocksudo yum versionlock nginxsudo yum versionlock nginxsudo yum versionlock nginx-1.20.1-1.el7/etc/yum/versionlock.listsudo yum versionlock package1 package2sudo yum versionlock php*sudo yum versionlock listdeletesudo yum versionlock delete nginxsudo yum versionlock delete php*versionlock.listyum updateyum versionlock/etc/yum/versionlock.list