[OE-core] Directory permissions and ownership -- RFC

Mark Hatle mark.hatle at windriver.com
Wed Jun 22 14:04:57 UTC 2011


On 6/21/11 11:51 PM, Mark Hatle wrote:
> On 6/21/11 5:13 PM, Mark Hatle wrote:

...

> Any comments.  I'm not sure I like this task approach, simply because it's more
> complicated.  But what I am testing now enables umask of 022 in:
> 
> do_install
> do_package
> do_rootfs
> rootfs_<pkg>_do_rootfs
> do_populate_sysroot
> adt-installer_1.0.bb: do_deploy
> linux-tools.inc: do_install_perf
> 
> I think that covers everywhere it will be needed...

Results from my over night build.

Just setting do_install and do_package isn't enough.  A lot of packages appear
to unpack, patch, configure, compile, and then in do_install copy, while
preserving permissions, from the build directory.  This leads to a number of
files with 0664 and directories with 0775 permissions (when the users umask is 002.)

I can certainly expand this to do_configure and do_compile.  But I'm really
concerned this will quickly grow out of control and end up being very complex...
 (I will attempt to do this and see if I get better results.)

--Mark

> --Mark
> 
>> On 6/21/11 5:05 PM, Richard Purdie wrote:
>>> On Tue, 2011-06-21 at 14:12 -0500, Mark Hatle wrote:
>>>> On 6/21/11 1:57 PM, Phil Blundell wrote:
>>>>> On Tue, 2011-06-21 at 11:43 -0500, Mark Hatle wrote:
>>>>>> Adjust the umask to 022.  This resolves the problem of dynamically generated
>>>>>> directories (mkdir -p) and specific files (touch foo) having odd permissions.
>>>>>>
>>>>>> http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=mhatle/perms&id=d8470b6a8efdbba04cef5d4dc1ce12720fe83621
>>>>>
>>>>> Are you confident that this isn't going to break anything like
>>>>> group-shared DL_DIRs?  I'm not entirely thrilled about forcing the umask
>>>>> to 022 for everything that bitbake does, although I can see that making
>>>>> it be so for particular tasks like do_install() might have some merit.
>>>>> Even in the latter case, though, I wonder whether we should just be
>>>>> paying more attention to recipe hygiene and using "install -m ..." with
>>>>> the permissions that we actually want.
>>>>
>>>> This is why I bring this up.. I'm a bit concerned that doing it generally will
>>>> have unintended consequences.  So far I am not aware of any.  Moving it to a
>>>> different place in the process may be better.  The only issue I've found so far
>>>> is that just coding int into "do_install" really isn't an option.  Between the
>>>> custom do_install components, various classes, etc.. it's difficult in the
>>>> current infrastructure to find a centralized location to set the value.
>>>>
>>>> (I'd love to be corrected if someone things of another way of doing it.)  The
>>>> setting of the umask is a very low cost operation, so doing it for certain steps
>>>> shouldn't cause a performance penalty... but until we figure that out this is
>>>> the best and easiest solution I've come up with.
>>>
>>> How about a umask flag for tasks?
>>>
>>> If bitbake sees it for a given task it would set the umask as indicated
>>> for the task. Cheap and easy and would only impact do_install tasks...
>>>
>>> Cheers,
>>>
>>> Richard
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Openembedded-core mailing list
>>> Openembedded-core at lists.openembedded.org
>>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>>
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core at lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
> 
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core





More information about the Openembedded-core mailing list