SLES 系统的zypper升级rpm包

✳️ 升级指定包:

sudo zypper up python3-pysmi

#如果包已是最新,它会提示 Nothing to do,否则就会升级它。

💥 强制重新安装(即使已经装了)

sudo zypper in --force python3-pysmi

若在使用zypper进行升级时报错:旧版本的某个路径和新版本的某个文件重名,新版本中的某个文件与旧版本中存在的“目录”冲突,系统不能把“文件”覆盖成“目录”,或反之,这种情况该怎么办?

解决方案

💥 使用 zypper 搭配 --replacefiles 参数来升级(或强制重装)某个包:

sudo zypper in --force --replacefiles python3-pysmi

命令说明:

参数含义
ininstall(安装包,如果已安装则更新)
-n非交互模式(non-interactive),zypper 不会等待用户输入,例如 [y/n] 选择会自动接受默认答案(通常是“是”)
-l表示 同时升级补丁(patch)包(尤其是来自更新通道的)
upupdate 的缩写,表示升级系统中已安装的包到最新版本
dupdist-upgrade,执行发行版级别的升级(可能替换软件源供应商)
--allow-vendor-change允许更换软件包的供应商(如从 SUSE 转到某个第三方)
--force即使已安装,也重新安装一遍
--force-resolution强制自动解决依赖问题,比如删除阻碍的包、降级某些依赖、第三方源(vendor change)需要调整依赖等,即使这种解决方式可能会引起其他包被删除或替换。
--replacefiles如果文件与已有路径冲突(比如文件 VS 目录),强制替换

🙋‍♂️ 使用zypper 升级包时如果不加 --force 会怎样?

  • 如果你已经装了这个包,且版本一样:zypper 会跳过安装,不会覆盖冲突文件;

  • 即使加了 --replacefiles,也只有在 zypper 执行安装操作时才生效;

  • 所以如果不加 --force,就有可能什么都不做,冲突依然保留。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值