I just updated my opensuse 13.2 on 15 July 2015 and after the update all applications which are 32 bit are not running anymore. For example skype or wine are reporting:
bash: ./skype: Permission denied
and if I run ldd on them I get:
ldd ./skype:
not a dynamic executable
and
file ./skype
./skype: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, BuildID[sha1]=6eef9a3f7c9719980b6e317a00ea971d3717ac89, stripped
could it be that the kernel has been built without the capability to run 32 bit applications ?
On 2015-07-15 14:16, mlaghi wrote:
>
> I just updated my opensuse 13.2 on 15 July 2015 and after the update all
> applications which are 32 bit are not running anymore.
You need to also install the 32 bit libraries available in the 64 bit
oss repo. Some of them, anyway. Maybe the opensuse skype wiki page lists
them.
> For example skype
> or wine are reporting:
>
> bash: ./skype: Permission denied
Does it have the ‘x’ executable attribute set, and is the partition
mounted “exec”?
>
> and if I run ldd on them I get:
> ldd ./skype:
> not a dynamic executable
ls -l /usr/bin/wine
-rwxr-xr-x 1 root root 9752 Oct 15 2014 /usr/bin/wine
uname -a:
Linux brix 3.16.7-21-desktop #1 SMP PREEMPT Tue Apr 14 07:11:37 UTC 2015 (93c1539) x86_64 x86_64 x86_64 GNU/Linux
but again: everything worked before the update. and this is not specific to skype or wine: it is the same for all 32-bit applications. And the partitions are also mounted as executable.
rpm creates such files when updating a package to not overwrite the old files immediately.
After the old files/packages are removed, those new files should get renamed to the final name.
So apparently rpm crashed a few times when updating glibc-32bit, or some other problem prevented it from renaming the files/changing the permissions.
I would suggest you run a filesystem check (from a LiveCD e.g. or add “rd.break” to the boot options to stop the boot before the root filesystem is mounted read-write), this might be caused by filesystem errors.
Then I’d suggest to delete all these files and re-install glibc-32bit.
It should look like this:
wolfi@amiga:~/Desktop> ls -l /lib/ld*
-rwxr-xr-x 1 root root 152330 17. Jun 16:52 /lib/ld-2.19.so
lrwxrwxrwx 1 root root 10 28. Jun 23:16 /lib/ld-linux.so.2 -> ld-2.19.so
Note that your files (ld-2.19.so;55a55c57 in particular, to which your /lib/ld-linux.so.2 points) do not have any read or execute permissions, which probably causes your problem.
the creation time (or last touch time) is aproximately consistent with the notorious update I ran (after which I experienced the problem)
There was nothing wrong with that update, or everybody would experience that.
Btw, the last glibc update was at the end of June…