本地模型修复系统dnf/yum/rpm同时损坏问题(Qwopus3.6-27B-Coder-MTP-GGUF) 问题描述openeuler-2003-sp1操作系统执行dnf update --allowerasing --skip-broken --nobest升级系统到2203-sp4。升级后dnf/yum损坏无法使用经我一顿’rpm -ivh xxxx --force’ 和scp拷贝库文件等操作后导致rpm也损坏。准备重装系统Qwopus3.6-27B-Coder-MTP-GGUF现场[rootmaster05 ~]# dnfTraceback(most recent call last): File/usr/lib64/python3.7/site-packages/libdnf/error.py, line14,inswig_import_helperreturnimportlib.import_module(mname)File/usr/lib64/python3.7/importlib/__init__.py, line127,inimport_modulereturn_bootstrap._gcd_import(name[level:], package, level)Filefrozen importlib._bootstrap, line1006,in_gcd_import Filefrozen importlib._bootstrap, line983,in_find_and_load Filefrozen importlib._bootstrap, line967,in_find_and_load_unlocked Filefrozen importlib._bootstrap, line670,in_load_unlocked Filefrozen importlib._bootstrap, line583,inmodule_from_spec Filefrozen importlib._bootstrap_external, line1043,increate_module Filefrozen importlib._bootstrap, line219,in_call_with_frames_removed ImportError: /usr/lib64/libsolvext.so.1: undefined symbol: rpmdbFStat During handling of the above exception, another exception occurred: Traceback(most recent call last): File/usr/bin/dnf, line57,inmodulefrom dnf.cliimportmain File/usr/lib/python3.7/site-packages/dnf/__init__.py, line30,inmoduleimportdnf.base File/usr/lib/python3.7/site-packages/dnf/base.py, line29,inmoduleimportlibdnf.transaction File/usr/lib64/python3.7/site-packages/libdnf/__init__.py, line8,inmodulefrom.importerror File/usr/lib64/python3.7/site-packages/libdnf/error.py, line17,inmodule_errorswig_import_helper()File/usr/lib64/python3.7/site-packages/libdnf/error.py, line16,inswig_import_helperreturnimportlib.import_module(_error)File/usr/lib64/python3.7/importlib/__init__.py, line127,inimport_modulereturn_bootstrap._gcd_import(name[level:], package, level)ModuleNotFoundError: No module named_errorrpm损坏后rpm-ivhhttps://artifactory.xxx.com.cn/thirdpart-rpm-openeuler-remote/openEuler-22.03-LTS-SP4/update/x86_64/Packages/rpm-4.17.0-45.oe2203sp4.x86_64.rpm--force获取https://artifactory.csc.com.cn/thirdpart-rpm-openeuler-remote/openEuler-22.03-LTS-SP4/update/x86_64/Packages/rpm-4.17.0-45.oe2203sp4.x86_64.rpm 警告/var/tmp/rpm-tmp.Vnkuor: 头V4 RSA/SHA256 Signature, 密钥 ID b675600b: NOKEY Verifying...################################# [100%]准备中...################################# [100%]正在升级/安装...1:rpm-4.17.0-45.oe2203sp4################################# [100%]PANIC: unprotected errorincall to Lua API(version mismatch: app. needs503.0, Lua core provides504.0)[rootmaster05 ~]# rpm -q rpmPANIC: unprotected errorincall to Lua API(version mismatch: app. needs503.0, Lua core provides504.0)Aborted核心已转储rpm-qrpm: symbol lookup error: /usr/lib64/librpm.so.9: undefined symbol: rpmverParse处理过程1、尝试本地模型Qwopus3.6-27B-Coder-MTP-GGUF进行恢复AI给的修复过程总结步骤操作说明1从 repo 下载 rpm-4.17.0-38 和 rpm-libs-4.17.0-38使用 curl Python 解析 RPM v3 xz 压缩格式2提取 librpm.so.9.2.0、librpmbuild.so.9.2.0、librpmio.so.9.2.0、librpmsign.so.9.2.0新版库包含 rpmdbFStat 符号依赖 liblua-5.4.so与 rpm 二进制匹配3提取 libsolvext.so.1、libsolv.so.1 (0.7.22-2)与新版 librpm 兼容的 libsolv4通过 SFTP 上传到服务器 /usr/lib64/—5更新符号链接 librpm.so.9 → librpm.so.9.2.0 等确保动态加载使用新版库6替换 libsolvext.so.1、libsolv.so.1解决原始 dnf 故障的根因7ldconfig rpm --rebuilddb刷新缓存修复数据库后端