[OE-core] [PATCH 2/3] pseudo: provide fallback passwd and group files

zhangxiao xiao.zhang at windriver.com
Thu Nov 13 02:31:30 UTC 2014


On 2014年11月12日 19:15, Peter A. Bigot wrote:
> On 11/12/2014 01:36 AM, zhangxiao wrote:
>> On 2014年11月02日 01:04, Peter A. Bigot wrote:
>>> Normally pseudo is built with --without-passwd-fallback, which requires
>>> that somebody provide target passwd and group files.  Those come from
>>> base-passwd in OE, but base-passwd cannot be built without first
>>> invoking operations under pseudo that require getpw*/getgr*.
>>>
>>> Provide the absolute minimum stub files, matching in content what will
>>> eventually be on the target, that can be used in the cases where the
>>> target files are not yet available.  The requirements for minimum stub
>>> are the usernames and groups identified in meta/files/fs-perms.txt.
>>>
>>> Signed-off-by: Peter A. Bigot <pab at pabigot.com>
>>> ---
>>>   meta/recipes-devtools/pseudo/files/fallback-group  | 2 ++
>>>   meta/recipes-devtools/pseudo/files/fallback-passwd | 1 +
>>>   meta/recipes-devtools/pseudo/pseudo_1.6.2.bb       | 8 ++++++++
>>>   3 files changed, 11 insertions(+)
>>>   create mode 100644 meta/recipes-devtools/pseudo/files/fallback-group
>>>   create mode 100644 meta/recipes-devtools/pseudo/files/fallback-passwd
>>>
>>> diff --git a/meta/recipes-devtools/pseudo/files/fallback-group
>>> b/meta/recipes-devtools/pseudo/files/fallback-group
>>> new file mode 100644
>>> index 0000000..81bf732
>>> --- /dev/null
>>> +++ b/meta/recipes-devtools/pseudo/files/fallback-group
>>> @@ -0,0 +1,2 @@
>>> +root:*:0:
>>
>> How about adding those two lines below?
>>
>> daemon:*:1:
>> bin:*:2:
>
> What's the rationale for adding these?
>
> My intent is for pseudo to provide the absolute minimum required for the
> default fs-perms.txt, not to attempt to provide everything that's in
> base-passwd.  If you override fs-perms.txt somehow and need those extra
> groups in early build stages, I think the right approach is to also
> provide your own fallback-group and fallback-passwd at the same time.
>
> If too much gets added to these fallback specifications, we're back in
> the same position of getting target files that don't match the
> configuration used during build/packaging.  In most cases, adding
> DEPENDS += "base-passwd" is going to be the right approach to things not
> being in the fallback files.
>
In fact, that is the reason I want those two lines above. I know it is not
nice. :-(

 From my point of view, base-files and base-passwd is so important and basic
that they should be installed at very beginning. Almost all packages should
R-depends on them, so can we find a method to install them at very beginning
thus avoid adding "DEPENDS" in those bb files?

Thanks
Xiao

> Peter
>
>>
>> Thanks
>> Xiao
>>
>>> +mail:*:8:
>>> diff --git a/meta/recipes-devtools/pseudo/files/fallback-passwd
>>> b/meta/recipes-devtools/pseudo/files/fallback-passwd
>>> new file mode 100644
>>> index 0000000..c1458dc
>>> --- /dev/null
>>> +++ b/meta/recipes-devtools/pseudo/files/fallback-passwd
>>> @@ -0,0 +1 @@
>>> +root::0:0:root:/home/root:/bin/sh
>>> diff --git a/meta/recipes-devtools/pseudo/pseudo_1.6.2.bb
>>> b/meta/recipes-devtools/pseudo/pseudo_1.6.2.bb
>>> index fb85f89..95fd2b8 100644
>>> --- a/meta/recipes-devtools/pseudo/pseudo_1.6.2.bb
>>> +++ b/meta/recipes-devtools/pseudo/pseudo_1.6.2.bb
>>> @@ -5,9 +5,17 @@ SRC_URI = " \
>>> file://0001-pseudo_client.c-protect-pwd_lck-against-magic.patch \
>>> file://0002-pseudo_util-modify-interface-to-pseudo_etc_file.patch \
>>> file://0003-pseudo_client.c-support-multiple-directories-in-PSEU.patch \
>>> +    file://fallback-passwd \
>>> +    file://fallback-group \
>>>   "
>>>
>>>   SRC_URI[md5sum] = "4d7b4f9d1b4aafa680ce94a5a9a52f1f"
>>>   SRC_URI[sha256sum] =
>>> "c72be92689511ced7c419149c6aaa1b1a9e4dfc6409d1f16ab72cc35bc1e376a"
>>>
>>>   PSEUDO_EXTRA_OPTS ?= "--enable-force-async --without-passwd-fallback"
>>> +
>>> +do_install_append_class-native () {
>>> +    install -d ${D}${sysconfdir}
>>> +    install -m 644 ${WORKDIR}/fallback-passwd ${D}${sysconfdir}/passwd
>>> +    install -m 644 ${WORKDIR}/fallback-group ${D}${sysconfdir}/group
>>> +}
>>>
>
>
>



More information about the Openembedded-core mailing list