Weird issue with missing shared libraries

Returning to work on a server with 64-bit OpenSUSE 13.1 that I left idle for a couple of weeks, I am experiencing a weird issue: some of the shared libraries have now size 0 Kb. For example, trying to run Firefox returns:

XPCOMGlueLoad error for file /usr/lib64/firefox/liblgpllibs.so:/usr/lib64/firefox/liblgpllibs.so: file too short

What is worse is, I think the issue is affecting zypper and yast as well:

$ sudo zypper patch-check
zypper: error while loading shared libraries: /usr/lib64/libidn.so.11: file too short

And running yast2 seems to be useless, as selecting both “Online Update” and “Software Management” does nothing, I just come back to the main screen.

I checked on the problematic libraries, and they have size “0”

lrwxrwxrwx 1 root root     17 Aug  4 16:06 /usr/lib64/libidn.so.11 -> libidn.so.11.6.14
-rwxr-xr-x 1 root root      0 Jul 10  2015 /usr/lib64/libidn.so.11.6.14

Do you have any suggestions on how to restore the system? Or am I doomed to just reinstall the OS? Thanks in advance for your time.

If your system has a multitude of problems, you should be able to re-install (and fully update) your entire system easily

zypper dup

If you have problems only with specific applications, you can do a force-re-install which should re-install and replace all files and dependencies

zypper in -f *packagename *

You might want to check your partitions for disk usage and available free space

df -h

HTH,
TSU

Short of reinstalling, it would also be possible to download the affected packages from the repos and re-install them with rpm directly.
If even rpm does not work, you could even just open them in a file archiving program (e.g. Ark, file-roller), extract the broken files and move/copy them to the corresponding directories. .rpm files are just CPIO archives, so you could also use the command line program cpio to extract them.

rpm and zypper also allow you to specify the root filesystem to use, so you could also use them from a livecd in the worst case…

Depending on your experience and the state of your system, it might indeed just easier to re-install, I would suggest to do an “Upgrade” to the same version to not loose any configuration or installed applications.
See https://en.opensuse.org/SDB:Offline_upgrade