Update via Apper > Updates totally destroyed package management system

Hello to every one. I am using OpenSuse 13.1.

Just now I’ve decided to install update via Apper > Updates, there were only one file to update, something like opensuse-2014… (Software stack update), there were new zypper and something more, I did not remember everything, but just only 5 files. After update complete system shows new available packages (about 22) and suggested to re-login. After log-out / log-in I can’t use Apper > Updates, it just displays message

“Error talking to packagekitd.”

Yast > Software Management even wouldn’t start, when I am starting zypper it writes:

zypper: error while loading shared libraries: /usr/lib64/libzypp.so.1306: file too short

What should I do now? How to fix it ??

Reinstall libzypp with rpm:

sudo rpm -Uvh --force http://download.opensuse.org/update/13.1/x86_64/libzypp-13.10.2-19.6.x86_64.rpm

And better check that your / partition is not full. IMHO that’s the most likely reason why something like this could happen.

It looks like I’ve found the solution, this post was helpful

https://forums.opensuse.org/showthread.php/472750-YAST-error-quot-Error-while-creating-client-module-sw_single-quot?

I’ve downloaded from here

http://ftp5.gwdg.de/pub/opensuse/distribution/13.1/repo/oss/suse/x86_64/

the following packages for my distro:zypper-1.9.3-1.1.x86_64.rpm libzypp-13.8.1-1.1.x86_64.rpm libsolv-tools-0.4.0-2.2.x86_64.rpm

and placed them in ~/rpmzypp

then in that folder:

su -c ‘rpm -ivh --force *rpm’
[entering root password]

su -c ‘zypper ref’
[entering root password]

Now Apper, Yast2 and zypper works correct as I can see. But I am still not sure that the currently available updates wouldn’t
break everything again, so I am still not sure what to do next.

Thanks for answer, it looks like I’ve already found similar solution, but after reapplying latest available update everything brakes again.

Latest update wants to remove libsolv-tools and looks like this is the reason for all problems

Definitely not, I have them installed just fine on all my systems.

Can you please run “sudo zypper up” and post the conflict messages you get?
And please also post your repo list:

zypper lr -d

zypper up

Loading repository data…
Reading installed packages…

The following package updates will NOT be installed:
amarok amarok-lang audacity blender fdupes gettext-runtime gettext-tools gptfdisk gstreamer gstreamer-0_10
gstreamer-0_10-plugin-esd gstreamer-0_10-plugin-gnomevfs gstreamer-0_10-plugins-base gstreamer-0_10-plugins-good
gstreamer-plugins-base libdirac_encoder0 libgstapp-0_10-0 libgstapp-0_10-0-32bit libgstapp-1_0-0 libgstaudio-1_0-0
libgstinterfaces-0_10-0 libgstinterfaces-0_10-0-32bit libgstpbutils-1_0-0 libgstreamer-0_10-0 libgstreamer-0_10-0-32bit
libgstreamer-1_0-0 libgstriff-1_0-0 libgsttag-1_0-0 libgstvideo-1_0-0 libmediastreamer_base3 libmediastreamer_voip3
libmjpegutils-2_0-0 libopus0 libquicktime0 libSDL_net-1_2-0 libSDL_sound-1_0-1 libsox2 libstrigi0 libxine2 libxine2-codecs
libxine2-pulse mjpegtools MozillaFirefox MozillaThunderbird sox strigi wine-gecko

The following packages are going to be upgraded:
aaa_base aaa_base-extras ca-certificates-mozilla libavcodec55 libavformat55 libavutil52 libfreebl3 libfreebl3-32bit libpostproc52
libsoftokn3 libsoftokn3-32bit libudisks2-0 mozilla-nspr mozilla-nspr-32bit mozilla-nss mozilla-nss-32bit mozilla-nss-certs
mozilla-nss-certs-32bit SuSEfirewall2 udisks2 wine-mono wine-snapshot wine-snapshot-32bit

23 packages to upgrade.
Overall download size: 89.4 MiB. After the operation, additional 286.7 KiB will be used.

zypper lr -d

| Alias | Name | Enabled | Refresh | Priority | Type | URI | Service

—±----------------------------------±----------------------------------------±--------±--------±---------±---------±-----------------------------------------------------------------------------±-------
1 | AMD/ATI-FGLRX | AMD/ATI-FGLRX | Yes | Yes | 99 | rpm-md | http://geeko.ioda.net/mirror/amd-fglrx/openSUSE_13.1/ |
2 | download.opensuse.org-Stable | openSUSE BuildService - LibreOffice | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/repositories/LibreOffice:/Stable/openSUSE_13.1/ |
3 | download.opensuse.org-Wine | openSUSE BuildService - Wine CVS Builds | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/repositories/Emulators:/Wine/openSUSE_13.1/ |
4 | download.opensuse.org-filesystems | openSUSE BuildService - filesystems | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/repositories/filesystems/openSUSE_13.1/ |
5 | download.opensuse.org-games | openSUSE BuildService - Games | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/repositories/games/openSUSE_13.1/ |
6 | download.opensuse.org-mozilla | openSUSE BuildService - Mozilla | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/repositories/mozilla/openSUSE_13.1/ |
7 | download.opensuse.org-oss | Main Repository (Sources) | Yes | Yes | 99 | yast2 | http://download.opensuse.org/source/distribution/13.1/repo/oss/ |
8 | ftp.gwdg.de-suse | Packman Repository | Yes | Yes | 99 | rpm-md | http://ftp.gwdg.de/pub/linux/packman/suse/openSUSE_13.1/ |
9 | loc | loc_opensuse_13_1_iso | No | No | 99 | yast2 | iso:///?iso=openSUSE-13.1-DVD-x86_64.iso&url=file:///opt/loc_repos/ISOs/ |
10 | loc_kernel_3.12 | loc_various_files | No | Yes | 99 | plaindir | dir:///opt/loc_repos/files |
11 | openSUSE-13.1-1.7 | openSUSE-13.1-1.7 | No | No | 99 | yast2 | cd:///?devices=/dev/disk/by-id/ata-hp_DVD_RAM_UJ8C2_HP26_264225,/dev/sr0 |
12 | repo-debug | openSUSE-13.1-Debug | Yes | Yes | 99 | yast2 | http://download.opensuse.org/debug/distribution/13.1/repo/oss/ |
13 | repo-debug-update | openSUSE-13.1-Update-Debug | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/debug/update/13.1/ |
14 | repo-debug-update-non-oss | openSUSE-13.1-Update-Debug-Non-Oss | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/debug/update/13.1-non-oss/ |
15 | repo-non-oss | openSUSE-13.1-Non-Oss | Yes | Yes | 99 | yast2 | http://download.opensuse.org/distribution/13.1/repo/non-oss/ |
16 | repo-oss | openSUSE-13.1-Oss | Yes | Yes | 99 | yast2 | http://download.opensuse.org/distribution/13.1/repo/oss/ |
17 | repo-source | openSUSE-13.1-Source | Yes | Yes | 99 | yast2 | http://download.opensuse.org/source/distribution/13.1/repo/oss/ |
18 | repo-update | openSUSE-13.1-Update | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/update/13.1/ |
19 | repo-update-non-oss | openSUSE-13.1-Update-Non-Oss | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/update/13.1-non-oss/

???
There is no conflict and nothing is going to be removed.
So just let it run and all should work.

But as I said, better check first whether you have enough free space on your / partition.
Your original error message was “/usr/lib64/libzypp.so.1306: file too short”, so apparently that file couldn’t be written completely when you installed that update the first time.

zypper lr -d

One note: you have the standard OSS source repo twice in your list (#7 and #17).
You could remove one of them.

And you could also remove the installation medias I suppose. (#9 and #11)

See my erlier reply:
I’ve downloaded from here

http://ftp5.gwdg.de/pub/opensuse/dis…s/suse/x86_64/

the following packages for my distro:zypper-1.9.3-1.1.x86_64.rpm libzypp-13.8.1-1.1.x86_64.rpm libsolv-tools-0.4.0-2.2.x86_64.rpm

and placed them in ~/rpmzypp

then in that folder:

su -c ‘rpm -ivh --force *rpm’
[entering root password]

su -c ‘zypper ref’
[entering root password]

So, after those actions I’ve fixed all problems with zypper,apper,yast2. BUT …

Now I could start Yast2 > Online Update, or Apper > Updates and there I see 4 updates:

Section Patches:

  1. zypper; libsolv; bugfix update

| openSUSE-2014-216 - zypper,libsolv: bugfix update
|
|

The updatestack received an update fixing various bugs:
Changes in libsolv:

  • fix bug in solver_get_unneeded that could lead to an
    endless loop [bnc#828764]

  • fix typos in pool_job2str

  • make addfilelist more resistant against corrupt rpms

  • fix pseudo packages obsoleting other pseudo packages
    Changes in zypper:

  • fix wrong processing of translated plural forms (bnc#756195)

  • Fix result list of ‘packages’ command (bnc#864198)

  • Updated translations.
    References:

  • 828764 (bugzilla) : Zypper hangs when executing any search/update/install operation

  • 756195 (bugzilla) : zypper translation: plural forms handling in zypper summary is faulty

  • 864198 (bugzilla) : Showing or deleting unneeded dependencies not possible

  1. Softwarestack update for openSUSE 13.1

| openSUSE-2014-22 - Softwarestack update for openSUSE 13.1
|
|

This update fixes the following issues with the softwarestack:

  • zypper:
  • bnc#854784: Fix groff .TP commands in manpage
  • bnc#853167: Fix detailed printing of query matches
  • bnc#756195: Embed item cound in summary output
  • Fix callback handling if media download error is ignored
  • improve computation of unneeded packages
  • Updated translations
  • libzypp:
  • bnc#853065:
  • Cleanup orphaned raw and solv caches + Clean packages cache on repo delete
  • bnc#852943: Fix disk usage computation for single packages

  • bnc#850907: Filter control chars illegal in XML1.0

  • bnc#849251: Re-evaluate dropped packages list on upgrade, even if product remains unchanged
    References:

  • 756195 (bugzilla) : zypper translation: plural forms handling in zypper summary is faulty

  • 849251 (bugzilla) : zypper: always installs a libyui package seemingly not required by anything

  • 850907 (bugzilla) : Package install fails with “Fatal error in Python code occurred [6]]” (code -1)

  • 853167 (bugzilla) : zypper crash with SIGSEGV signal on search action

  • 854784 (bugzilla) : Zypper man page creates error when attempting to read it

  • 853065 (bugzilla) : zypper rm won’t delete caches

  • 852943 (bugzilla) : YaST reports “Not enough disk space” when mountpoints are on separate disks

  1. Softwarestack update for openSUSE 13.1

| openSUSE-2014-413 - Softwarestack update for openSUSE 13.1
|
|

This update fixes the following issues with the Softwarestack:

  • zypper:
  • download: fix xml output when already cached + fate#317077: Add ‘download’ command + packages: Remove conflicting short options (-r repo/reconmmends) + Updated translations
  • libzypp:
  • bnc#877405: Adjust transfer timeout settings + bnc#834858: Fix computation of update candidate + fate#317077: Factor out CommitPackageCache for standalone usage. + Install zypp-NameReqPrv helper for evaluating testcases.
    References:
  • 834858 (bugzilla) : Apper can’t update packages from lower-priority repos
  • 877405 (bugzilla) : Yast2 install - download gets stuck after a connection lost, does not retry
  • 317077 (fate) : https://features.opensuse.org/317077
  1. Softwarestack update for openSUSE 13.1

| openSUSE-2014-89 - Softwarestack update for openSUSE 13.1
|
|

This update fixes the following issues with the Software Stack:

  • zypper:
  • bnc#859160:
  • Zypper must refresh CD/DVD if no raw metadata are present
  • Don’t read metadata from CD/DVD repo if --no-check was used
  • bnc#859211: Fix filelist search to match full paths instead of basenames only + bnc#855845: Fix missing priority in RepoInfo::dumpAsXML + Update manpage (distribution upgrade) + Updated translations
  • libzypp:
  • bnc#853065: Fix cleanup code removing the @System solv file. + bnc#855845: Fix missing priority in RepoInfo::dumpAsXML + bnc#683914: Add support for repo authentication using SSL client certificates + Updated translations
  • libzypp-bindings:
  • Fix python-testcases
    References:
  • 683914 (bugzilla) : Add support for repo authentication using SSL client certificates
  • 853065 (bugzilla) : zypper rm won’t delete caches
  • 855845 (bugzilla) : zypper --xmlout repos does not contain priority
  • 859160 (bugzilla) : “zypper ar cd:///” always insists on getting the medium
  • 859211 (bugzilla) : new zypper’s se -f feature seems broken

After applying these patches everything breakes again and I am forced to repeat whole procedure from the beginning. This is the root of problem. And I have enough free space on root partiotion (more than 90 GBs)

I am aware of that.
But you also said that libsolv-tools is being removed and that is the cause of your issue.
And I don’t see that being the case.

After applying these patches everything breakes again and I am forced to repeat whole procedure from the beginning. This is the root of problem. And I have enough free space on root partiotion (more than 90 GBs)

And what about “sudo zypper up”?
Let that run and see if it works then.

On second thought, maybe you have a broken package (incomplete download or something) in your zypper cache.
Try to remove that before installing the updates:

sudo rm -r /var/cache/zypp/

As I said, the update packages are perfectly fine. It could be though that the mirror that you get redirected to is broken.

A side-note:
Why are you posting this in English in the Russian forum?
Better request your thread to be moved to an english forum I’d say. (click on the triangle below a post, “Report post”)

Sorry, it looks like I am messed forum threads…

Anyway, right now everything works, in apper > updates or in Yast > Online Update I have those 4 patches, if I apply them, then everything will be broken again. Why is this happening ? How to fix it.

zypper up command doesn’t tries to apply those patches. Only apper and yast tries.

As I said, try to remove the zypper cache.
Otherwise I have no idea why this should happen, except some hardware problem like a dying hard disk or faulty RAM. But I guess in that case it would not be that reproducible.

zypper up command doesn’t tries to apply those patches. Only apper and yast tries.

Those “patches” are just a list of packages to install in a specific version.
“zypper up” will just update the packages to the latest version and not care about the patches, but the result is the same.
So have you tried to update with “zypper up”?

You could also try to disable the use of delta rpms in /etc/zypp/zypp.conf:

download.use_deltarpm = false

Maybe something goes wrong when creating the full RPMs out of your installed packages and the delta rpms.

#### Whether to consider using a .delta.rpm when downloading a package
##
## Valid values: boolean
## Default value: true
##
## Using a delta rpm will decrease the download size for package updates
## since it does not contain all files of the package but only the binary
## diff of changed ones. Recreating the rpm package on the local machine
## is an expensive operation (memory,CPU). If your network connection is
## not too slow, you benefit from disabling .delta.rpm.
##
# download.use_deltarpm = true

Or try to download those 3 packages (zypper, libzypp, libsolv-tools) manually from the update repo and install them with rpm.
Again, they work fine here (on more than one system), and I am not aware of any other complaints. So there’s definitely not a general problem with those updates.

OK, thanks a lot, I will try to remove cache and to check other suggestions. Will send feedback here a bit later.

Finally, I’ve got it.

Steps to fix

  1. Download the following packages:zypper-1.9.3-1.1.x86_64.rpm libzypp-13.8.1-1.1.x86_64.rpm libsolv-tools-0.4.0-2.2.x86_64.rpmfrom here http://ftp5.gwdg.de/pub/opensuse/distribution/13.1/repo/oss/suse/x86_64/

  2. As said here https://forums.opensuse.org/showthread.php/472750-YAST-error-quot-Error-while-creating-client-module-sw_single-quot?
    place them into ~/rpmzypp

  3. Then in that folder:

su -c ‘rpm -ivh --force *rpm’
[entering root password]

su -c ‘zypper ref’
[entering root password]

  1. Remove zypper cache

sudo rm -r /var/cache/zypp/

  1. Open Yast2 > Software Management. I’ve typed zypper and in Versios tab found that I have two versions installed. 1.9.16… and 1.9.3… . The similar situation was with libzypp and libsolv-tools, so, one by one, I’ve marked related checkbox for updating, and after each package was updated Versions tab shows only one version installed.

Now everything ok, all tools works correct, no patches to install. I don’t know why is this happened, but I am glad that the problem solved.

Good to hear that this is solved! :slight_smile:

A few notes though:

  1. Download the following packages:zypper-1.9.3-1.1.x86_64.rpmlibzypp-13.8.1-1.1.x86_64.rpmlibsolv-tools-0.4.0-2.2.x86_64.rpmfrom here http://ftp5.gwdg.de/pub/opensuse/dis…s/suse/x86_64/

Why not directly download the latest versions from here? (as I actually suggested)
http://ftp5.gwdg.de/pub/opensuse/update/13.1/x86_64/

You wouldn’t have to install those updates then any more afterwards. As I said, a “patch” is nothing special, it just tells the package management system that the package xxx should have at least version yyy.
When you “apply the patch” just the updated packages get installed.

  1. As said here https://forums.opensuse.org/showthread.php/472750-YAST-error-quot-Error-while-creating-client-module-sw_single-quot?
    place them into ~/rpmzypp

It doesn’t matter where you place them.
You could just as well download it to ~/Downloads (or whatever) and install it from there.

  1. Open Yast2 > Software Management. I’ve typed zypper and in Versios tab found that I have two versions installed. 1.9.16… and 1.9.3… . The similar situation was with libzypp and libsolv-tools, so, one by one, I’ve marked related checkbox for updating, and after each package was updated Versions tab shows only one version installed.

Ok, so apparently the first update failed (obviously, otherwise you wouldn’t have gotten that “file too short” message) and left both versions installed for some reason. So the updated version didn’t get installed any more when you tried again, and caused a version mismatch in the files actually on the hard disk (i.e. you didn’t update libzypp any more, only the rest).

Yeah, probably you are right here, thanks a lot again.

A side-note:
Why are you posting this in English in the Russian forum?

I hope, I can move the thread to the English Forum.