如何强制安装 rpm?

如何强制安装 rpm?

我有一个 gitlab 管道,每次我都会在其中安装最新的 rpm。

有时,即使手动更改目标机器,rpm 也应该能够成功安装。

但不知何故我遇到了以下错误。

Loaded plugins: extras_suggestions, langpacks, priorities, update-motd
Ignored option -q, -v, -d or -e (probably due to merging: -yq != -y -q)
605133599.rpm                                                                                    | 124 kB  00:00:00
Examining /var/tmp/yum-root-RG0U7M/605133599.rpm: myproject-nightlye2e-1.x86_64
/var/tmp/yum-root-RG0U7M/605133599.rpm: does not update installed package.
Error: Nothing to do

因此,即使机器没有安装任何版本或安装了较旧/最新/相同的版本,当我使用 rpm 文件运行下面的 yum install 时,它也应该强制安装或更新。

yum install -yq rpmfilepath

怎么做?

请提出建议。

答案1

如果您满足所有软件包先决条件,您可以运行如下命令:

rpm -U package.rpm

强制安装该包,即使它已经安装。

答案2

使用时不要合并选项yum。只需使用此命令:

yum install -y rpmfilepath >/dev/null

>/dev/null我在这里使用amd 的原因-q是它不会隐藏有关已安装依赖项的消息。例如:

# yum install -y -q rpmfilepath 

Installed:
  glibc-2.31-6.fc32.i686   libgcc-10.3.1-1.fc32.i686   rpmfilepath                                                        

如果确实需要(例如降级),那么你可以简单地运行

# rpm -U --force rpmfilepath

yum将会安装依赖项,之后您可以使用--force(= --replacepkgs --replacefiles --oldpackage) 进行安装rpm

相关内容