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

Re: /usr/lib64 or /usr/lib



Sven Joachim <svenjoac@gmx.de> writes:

> On 2011-06-11 09:22 +0200, Goswin von Brederlow wrote:
>
>> Except for how dpkg behaves. If your package has a file in /usr/lib64/
>> and gets installed then dpkg records that that directory belongs to your
>> package. Then the next time libc6 gets updated dpkg will try to unpack
>> the /usr/lib64 symlink and fail because you can not replace a directory
>> of another package with a symlink.
>
> Er no, this is not how dpkg behaves.  It never converts symlinks to
> directories or vice versa, so the actual outcome is¹ that your file gets
> actually installed into /usr/lib through the symlink.  This means that
> if another package starts shipping a file with the same name in
> /usr/lib, dpkg will not notice the file conflict which is bad.

Please read again. Nothing gets converted. dpkg just fails with a file
overwrite error because /usr/lib64 belongs to another package and is not
a directory in libc6. And only directories are allowed to be in multiple
packages.

> It's much worse if you ship files in /lib64, because if your package is
> installed into a chroot and unpacked by the host dpkg with the --root=â?¦
> option, the files end up in the host system².
>
> Sven

MfG
        Goswin


Reply to: