在嵌入式 Linux 上安装带有依赖项的 yum



我对Linux相当陌生,对rpmyum的使用更熟悉,后者当然会解决依赖关系并安装整个软件包。我主要使用CentOs.

我现在正在尝试使用一个非常基本的embedded Linux,它只有rpm,没有dnfyum。我想安装yum,这样我就可以灵活地管理包,但是使用rpm,我得到的只是一大堆依赖项,其中一些我尝试解决,例如dnfpython-dnf,在它成为永无止境的列表之前。

有没有更简单的方法可以在我的系统上安装yum

这样做是示例,直接(和无聊(的过程。

首先,您找到发行版和体系结构的包所在的位置并获取URL。例如,对于x86_64,CentOS 8 是(其中一个镜像(:

http://centos.telecoms.bg/8/BaseOS/x86_64/os/Packages/yum-4.0.9.2-5.el8.noarch.rpm

接下来你需要获取这个包的依赖项(基于你已经安装的内容((以root身份运行(

# rpm -q -R http://centos.telecoms.bg/8/AppStream/x86_64/os/Packages/anaconda-29.19.0.40-1.el8.x86_64.rpm
/bin/sh
/bin/sh
anaconda-core = 29.19.0.40-1.el8
anaconda-gui = 29.19.0.40-1.el8
anaconda-install-env-deps = 29.19.0.40-1.el8
anaconda-tui = 29.19.0.40-1.el8
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1

(在上面的例子中,我使用不同的包(

所以你已经/bin/sh但需要anaconda-coreanaconda-guianaconda-install-env-depsanaconda-tuirpmlib

接下来,在存储库中搜索这些包的 URL。并逐个检查它们的依赖项。获取所有 URL 后,您创建一个长行来安装所有 URL。或者先安装必备组件,然后再安装程序包。

rpm -i http://centos.telecoms.bg/8/AppStream/x86_64/os/Packages/anaconda-29.19.0.40-1.el8.x86_64.rpm  
http://centos.telecoms.bg/8/AppStream/x86_64/os/Packages/anaconda-core-29.19.0.40-1.el8.x86_64.rpm  
http://centos.telecoms.bg/8/AppStream/x86_64/os/Packages/anaconda-gui-29.19.0.40-1.el8.x86_64.rpm  
http://centos.telecoms.bg/8/AppStream/x86_64/os/Packages/anaconda-install-env-deps-29.19.0.40-1.el8.x86_64.rpm 
.....

最新更新