问题描述 在执行 dnf repoclosure 命令时,检测到多个软件包存在未解析的依赖项。测试环境基于 AnolisOS-23 的 Docker 容器,OS 和 DDE 软件仓库进行依赖关系检查。 执行步骤: 1、安装启动docker yum install docker -y systemctl start docker 2、拉取和启动镜像 docker pull registry.openanolis.cn/openanolis/anolisos:23.2 image_id=docker images -f reference=registry.openanolis.cn/openanolis/anolisos:23.2 |awk '{print $3}'|grep -v -i IMAGE docker run --name repoclosure_test -d --shm-size=2g --net=host $image_id bash -c 'hostname;sleep 360000' docker exec repoclosure_test bash -c 'yum install yum-utils -y' 3、执行 repoclosure 命令检查依赖关系闭合性 docker exec repoclosure_test bash -c 'dnf repoclosure --arch=aarch64 --arch=noarch --repofrompath=repoclosure-os.aarch64,https://build.openanolis.cn/kojifiles/output/nightly/anolis-23-20250331.0/compose/os/aarch64/os/ --repofrompath=repoclosure-DDE.aarch64,https://build.openanolis.cn/kojifiles/output/nightly/anolis-23-20250331.0/compose/DDE/aarch64/os/ --repo=repoclosure-os.aarch64 --repo=repoclosure-DDE.aarch64 --check=repoclosure-os.aarch64 --check=repoclosure-DDE.aarch64' 报错输出: Installed: dbus-libs-1:1.14.8-1.an23.aarch64 dnf-plugins-core-4.3.1-2.an23.noarch python3-dateutil-1:2.8.2-5.an23.noarch python3-dbus-1.3.2-3.an23.aarch64 python3-distro-1.8.0-3.an23.noarch python3-dnf-plugins-core-4.3.1-2.an23.noarch python3-six-1.16.0-3.an23.noarch yum-utils-4.3.1-2.an23.noarch Complete! Added repoclosure-os.aarch64 repo from https://build.openanolis.cn/kojifiles/output/nightly/anolis-23-20250331.0/compose/os/aarch64/os/ Added repoclosure-DDE.aarch64 repo from https://build.openanolis.cn/kojifiles/output/nightly/anolis-23-20250331.0/compose/DDE/aarch64/os/ repoclosure-os.aarch64 2.7 MB/s | 11 MB 00:04 repoclosure-DDE.aarch64 560 kB/s | 1.1 MB 00:01 Error: Repoclosure ended with unresolved dependencies (18) across 15 packages. package: clevis-21-1.an23.aarch64 from repoclosure-os.aarch64 unresolved deps (1): clevis-pin-tpm2 package: composer-2.7.1-3.an23.noarch from repoclosure-os.aarch64 unresolved deps (1): php-zip package: freeimage-3.19.0-0.20.svn1909.1.an23.aarch64 from repoclosure-DDE.aarch64 unresolved deps (1): libImath-3_1.so.30()(64bit) package: galera-26.4.21-1.an23.aarch64 from repoclosure-os.aarch64 unresolved deps (1): libboost_program_options.so.1.81.0()(64bit) package: langpacks-core-zh_HK-3.0-2.an23.noarch from repoclosure-os.aarch64 unresolved deps (1): (ibus-table-chinese-cangjie if xorg-x11-server-Xorg) package: langpacks-core-zh_TW-3.0-2.an23.noarch from repoclosure-os.aarch64 unresolved deps (1): (ibus-libzhuyin if xorg-x11-server-Xorg) package: libselinux-ruby-3.5-3.an23.aarch64 from repoclosure-os.aarch64 unresolved deps (1): libruby.so.3.1()(64bit) package: libvirt-wireshark-9.10.0-10.an23.aarch64 from repoclosure-os.aarch64 unresolved deps (1): libwireshark.so.16()(64bit) package: lucene++-3.0.7-24.1.an23.aarch64 from repoclosure-DDE.aarch64 unresolved deps (3): libboost_filesystem.so.1.81.0()(64bit) libboost_iostreams.so.1.81.0()(64bit) libboost_thread.so.1.81.0()(64bit) package: openwsman-server-2.7.2-1.an23.aarch64 from repoclosure-os.aarch64 unresolved deps (1): libruby.so.3.1()(64bit) package: php-libguestfs-1:1.50.1-2.an23.aarch64 from repoclosure-os.aarch64 unresolved deps (2): php(api) = 20220829-64 php(zend-abi) = 20220829-64 package: rrdtool-ruby-1.8.0-3.an23.aarch64 from repoclosure-os.aarch64 unresolved deps (1): libruby.so.3.1()(64bit) package: ruby-hivex-1.3.24-1.an23.aarch64 from repoclosure-os.aarch64 unresolved deps (1): libruby.so.3.1()(64bit) package: ruby-libguestfs-1:1.50.1-2.an23.aarch64 from repoclosure-os.aarch64 unresolved deps (1): libruby.so.3.1()(64bit) package: ruby-solv-0.7.24-1.an23.aarch64 from repoclosure-os.aarch64 unresolved deps (1): libruby.so.3.1()(64bit)
1、clevis升级至21版本时引入安装依赖clevis-pin-tpm2,在anolis-23-20250331.0仓库中没有找到该软件包所以报错,但后续该软件包已由外部引入构建,在最新仓库中该问题已解决 2、php升级至8.3.15-1,在该次升级过程中php-zip不在单独成包,所以导致composer安装过程中无法找到该依赖而报错,后续已对composer解除php-zip依赖,在最新仓库中该问题已解决 3、imath升级至3.1.10导致依赖指向问题,后续已对freeimage进行重构建使得依赖指向正确版本,在最新仓库中该问题已解决 4、boost-program-options升级至1.83.0导致依赖指向问题,后续已对galera进行重构建使得依赖指向正确版本,在最新仓库中该问题已解决 5、查看langpacks历史提交发现,软件包已经对ibus-table-chinese-cangjie解除依赖,当前在最新仓库中该问题已解决 6、查看langpacks历史提交发现,软件包已经对ibus-libzhuyin解除依赖,当前在最新仓库中该问题已解决 7、ruby-libs升级至3.3.7导致依赖指向问题,后续已对libselinux进行重构建使得依赖指向正确版本,在最新仓库中该问题已解决 8、wireshark-cli升级至4.4.2导致依赖指向问题,后续已对libvirt进行重构建使得依赖指向正确版本,在最新仓库中该问题已解决 9、boost升级至1.83.0导致依赖指向问题,后续已对lucene++进行重构建使得依赖指向正确版本,在最新仓库中该问题已解决 10、php升级至8.2.27导致依赖指向问题,后续已对libguestfs进行重构建使得依赖指向正确版本,在最新仓库中该问题已解决 11、ruby-libs升级至3.3.7导致依赖指向问题,后续已对rrdtool-ruby、ruby-hivex、ruby-libguestfs、ruby-solv进行重构建使得依赖指向正确版本,在最新仓库中该问题已解决 综上,本次repoclosure 测试问题在最新仓库中问题已解决