我已将我的发行版从 Tumleweed 更改为 Leap 43,将存储库列表更改为:
# zypper lr
Repository priorities are without effect. All enabled repositories share the same priority.
# | Alias | Name | Enabled | GPG Check | Refresh
--+-------------------------------------+-----------------------------------+---------+-----------+--------
1 | http-download.opensuse.org-2fb25ebb | devel:tools:building | Yes | (r ) Yes | Yes
2 | packman | packman | Yes | (r ) Yes | Yes
3 | repo-debug | openSUSE-Leap-42.3-Debug | No | ---- | ----
4 | repo-non-oss | openSUSE-Leap-42.3-Non-Oss | Yes | (r ) Yes | Yes
5 | repo-oss | openSUSE-Leap-42.3-Oss | Yes | (r ) Yes | Yes
6 | repo-source | openSUSE-Leap-42.3-Source | No | ---- | ----
7 | repo-source-non-oss | openSUSE-Leap-42.3-Source-Non-Oss | Yes | (r ) Yes | Yes
8 | repo-update | openSUSE-Leap-42.3-Update | Yes | (r ) Yes | Yes
9 | repo-update-non-oss | openSUSE-Leap-42.3-Update-Non-Oss | Yes | (r ) Yes | Yes
接下来我尝试更新它:
# zypper up
Loading repository data...
Reading installed packages...
The following 119 package updates will NOT be installed:
cmake dmraid ffmpeg gettext-runtime gio-branding-openSUSE gstreamer-plugins-bad gtk3-branding-openSUSE java-1_8_0-openjdk java-1_8_0-openjdk-headless libavcodec57 libavdevice57 libavfilter6 libavformat57 libavresample3 libavutil55 libdcerpc0 libdcerpc0-32bit
libdcerpc-binding0 libdcerpc-binding0-32bit libgstadaptivedemux-1_0-0 libgstbadaudio-1_0-0 libgstbadbase-1_0-0 libgstbadvideo-1_0-0 libgstbasecamerabinsrc-1_0-0 libgstcodecparsers-1_0-0 libgstgl-1_0-0 libgstmpegts-1_0-0 libgstphotography-1_0-0 libgsturidownloader-1_0-0
libgstwayland-1_0-0 libltdl7 libmjpegutils-2_0-0 libndr0 libndr0-32bit libndr-krb5pac0 libndr-krb5pac0-32bit libndr-nbt0 libndr-nbt0-32bit libndr-standard0 libndr-standard0-32bit libnetapi0 libnetapi0-32bit libpostproc54 libquicktime0 libsamba-credentials0
libsamba-credentials0-32bit libsamba-hostconfig0 libsamba-hostconfig0-32bit libsamba-passdb0 libsamba-passdb0-32bit libsamba-util0 libsamba-util0-32bit libsamdb0 libsamdb0-32bit libsmbclient0 libsmbconf0 libsmbconf0-32bit libsmbldap0 libsmbldap0-32bit libsox3
libswresample2 libswscale4 libwbclient0 libwbclient0-32bit mjpegtools NetworkManager-branding-openSUSE PackageKit-branding-openSUSE perl-Authen-SASL perl-B-Hooks-EndOfScope perl-Class-Data-Inheritable perl-Class-Factory-Util perl-Class-Method-Modifiers
perl-Crypt-SmbHash perl-Devel-Caller perl-Devel-LexAlias perl-Digest-HMAC perl-Digest-MD4 perl-Digest-SHA1 perl-Eval-Closure perl-File-Listing perl-HTML-Tagset perl-HTTP-Daemon perl-HTTP-Date perl-HTTP-Negotiate perl-LWP-MediaTypes perl-namespace-autoclean
perl-namespace-clean perl-Net-LibIDN perl-Package-DeprecationManager perl-PadWalker perl-Params-Util perl-Pod-Coverage perl-Sub-Install perl-TermReadLine-Gnu perl-Test-Fatal perl-TimeDate perl-WWW-RobotRules perl-X11-Protocol perl-X500-DN perl-XML-SAX python3-cairo
qt4-qtscript samba samba-client samba-client-32bit samba-libs samba-libs-32bit samba-winbind samba-winbind-32bit site-config sox subversion-perl xf86-input-vmmouse xf86-input-void xf86-video-fbdev xf86-video-vesa xorg-x11-server yast2-core yast2-perl-bindings
The following 2 packages are going to be REMOVED:
libzypp libzypp
The following 5 packages are going to be upgraded:
libicu52_1 libicu52_1-data libzypp zypper-aptitude zypper-log
5 packages to upgrade, 2 to remove.
Overall download size: 8.7 MiB. Already cached: 0 B. After the operation, 14.9 MiB will be freed.
Continue? [y/n/...? shows all options] (y): y
Retrieving package libicu52_1-data-52.1-15.1.x86_64 (1/5), 5.2 MiB ( 22.4 MiB unpacked)
Retrieving delta: ./x86_64/libicu52_1-data-52.1-13.3_15.1.x86_64.drpm, 16.7 KiB
Retrieving: libicu52_1-data-52.1-13.3_15.1.x86_64.drpm ..................................................................................................................................................................................................................[done]
Applying delta: ./libicu52_1-data-52.1-13.3_15.1.x86_64.drpm ............................................................................................................................................................................................................[done]
Retrieving package libzypp-16.15.6-12.1.x86_64 (2/5), 2.0 MiB ( 7.4 MiB unpacked)
Retrieving: libzypp-16.15.6-12.1.x86_64.rpm ...............................................................................................................................................................................................................[done (356.5 KiB/s)]
Retrieving package zypper-aptitude-1.13.32-8.1.noarch (3/5), 60.4 KiB ( 4.0 KiB unpacked)
Retrieving: zypper-aptitude-1.13.32-8.1.noarch.rpm .........................................................................................................................................................................................................[done (75.4 KiB/s)]
Retrieving package zypper-log-1.13.32-8.1.noarch (4/5), 61.0 KiB ( 6.2 KiB unpacked)
Retrieving: zypper-log-1.13.32-8.1.noarch.rpm ...........................................................................................................................................................................................................................[done]
Retrieving package libicu52_1-52.1-15.1.x86_64 (5/5), 1.4 MiB ( 4.3 MiB unpacked)
Retrieving delta: ./x86_64/libicu52_1-52.1-13.3_15.1.x86_64.drpm, 21.8 KiB
Retrieving: libicu52_1-52.1-13.3_15.1.x86_64.drpm .......................................................................................................................................................................................................................[done]
Applying delta: ./libicu52_1-52.1-13.3_15.1.x86_64.drpm .................................................................................................................................................................................................................[done]
Checking for file conflicts: ............................................................................................................................................................................................................................................[done]
(1/5) Installing: libicu52_1-data-52.1-15.1.x86_64 ......................................................................................................................................................................................................................[done]
(2/5) Installing: libzypp-16.15.6-12.1.x86_64 ...........................................................................................................................................................................................................................[done]
(3/5) Installing: zypper-aptitude-1.13.32-8.1.noarch ....................................................................................................................................................................................................................[done]
(4/5) Installing: zypper-log-1.13.32-8.1.noarch .........................................................................................................................................................................................................................[done]
(5/5) Installing: libicu52_1-52.1-15.1.x86_64 ...........................................................................................................................................................................................................................[done]
There are some running programs that might use files deleted by recent upgrade. You may wish to check and restart some of them. Run 'zypper ps -s' to list these programs.
zypper 被破坏后:
# zypper
zypper: relocation error: zypper: symbol _ZN4zypp13KeyRingReport10infoVerifyERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_13PublicKeyDataERKNS_10KeyContextE, version ZYPP_plain not defined in file libzypp.so.1600 with link time reference
我尝试从 Tumbleweed 中查找与 zypper 相关的软件包版本,并安装了它们:
# rpm --force -hiv libmodman1-2.0.1-24.25.x86_64.rpm libproxy1-0.4.14-164.14.x86_64.rpm python-zypp-0.7.3-3.27.x86_64.rpm zypper-1.13.32-9.1.x86_64.rpm zypper-aptitude-1.13.14-1.1.noarch.rpm zypper-log-1.13.14-1.1.noarch.rpm
warning: libmodman1-2.0.1-24.25.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 629ff0c2: NOKEY
warning: python-zypp-0.7.3-3.27.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID f3ef3328: NOKEY
warning: zypper-aptitude-1.13.14-1.1.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f6ab3975: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:zypper-1.13.32-9.1 ################################# [ 17%]
2:libmodman1-2.0.1-24.25 ################################# [ 33%]
3:libproxy1-0.4.14-164.14 ################################# [ 50%]
4:zypper-aptitude-1.13.14-1.1 ################################# [ 67%]
5:zypper-log-1.13.14-1.1 ################################# [ 83%]
6:python-zypp-0.7.3-3.27 ################################# [100%]
但是它不修复 zypper:
# zypper
zypper: relocation error: zypper: symbol _ZN4zypp13KeyRingReport10infoVerifyERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_13PublicKeyDataERKNS_10KeyContextE, version ZYPP_plain not defined in file libzypp.so.1600 with link time reference
我该如何避免重新安装系统?我可以下载zypper的源代码并编译并运行吗?
答案1
我从 software.opensuse.org 下载了 openSuse 42.3 的 zyppper 和 libzypp
之后我运行rpm --force -hiv *rpm
(对于这些 rpm)并且在此操作之后 zypper 被修复。