[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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.


Reply to: