Re: apt-get /lib/ld-linux.so.3 deletion screwup disaster
Wookey <wookey <at> wookware.org> writes:
> +++ Phil Endecott [2013-05-07 20:36 +0000]:
>
> > I eventually discovered that things would run if I invoked the dynamic
> > linker directly:
> >
> > # /lib/ld-linux-armhf.so.3 /bin/ls
> >
> > I was then able to establish that my existing executables want a dynamic
> > linker called /lib/ld-linux.so.3, while I now have only
> > /lib/ld-linux-armhf.so.3 . By symlinking the latter to the former, the
> > system is apparently functional again.
> >
> > So what is the root problem here?
>
> Your original install was built before the name for the armhf linker
> was agreed between distros. Once it was agreed (with a different path
> to the one Debian originally picked) everything had to be
> (incompatibly) rebuilt.
>
> Yes this is very annoying, especially to anyone who installed from
> that early ports repo. That repo was never 'released' in any proper
> way and it was thought that anyone using it was following development
> closely enough to notice the linker-name change (there was quite a lot
> of discussion about this on the lists). Sorry that you missed that
> until finding out the hard way.
Hmmm. It's disappointing that apt didn't know about this. Isn't this sort
of compatibility between packages exactly the sort of thing that it is
supposed to track?
Anyway, I'm still unsure what I should do now. Presumably I will have to do
some sort of apt-get upgrade to replace all packages (or at least all
packages with executables). But I think the first thing it will try to do
is to replace libc again, and delete /lib/ld-linux.so.3. Maybe I should
make the symlink immutable, or something.
Thanks, Phil.
>
> Wookey
Reply to: