Bug#632682: base-files: please provide a /lib64 -> /lib symlink on 64-bit systems
On 2011-08-10 22:03 +0200, Aurelien Jarno wrote:
> On Wed, Aug 10, 2011 at 08:35:39PM +0200, Sven Joachim wrote:
>>
>> I'll have a look at it in the next few days if nobody beats me to it.
>> Just to confirm that my ideas were the same as yours, AFAICS the
>> following needs to be done in the preinst (on amd64), if /lib64 is a
>> symlink:
>>
>> 1) remove /lib64
>> 2) create /lib64 directory
>> 3) symlink $(readlink -e /lib/ld-linux-x86-64.so.2) to /lib64/ld-linux-x86-64.so.2
>>
>> 2) and 3) are a bit difficult after the path to the ELF interpreter has
>> just disappeared. I guess you still want to stick to shell nonetheless
>> (as opposed to doing these steps in perl, say) ?
>>
>
> This is basically what we have in mind, though it has not been tested.
> For step 2 and 3, you can call the ELF interpreter directly, that is
> "/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2 mkdir /lib64".
Except for the case where you install the libc on a foreign
architecture. Then this might not work.
> The whole operation is still not atomic, but so far it's the best way to
> do it. We might want to insert a call to sync as steps 0 and 4, to
> minimize the possible time with ELF interpreter, and to make sure the
> data is written to the disk as soon as possible (otherwise if the
> machine crashes, the system can't boot).
Good idea.
Cheers,
Sven
Reply to: