[bitbake-devel] How do useradd.bbclass and chown/chgrp in do_install work _internally_?

Boszormenyi Zoltan zboszor at pr.hu
Thu Aug 6 04:12:00 UTC 2015


(This was originally posted on openembedded-devel but I got no answer. Maybe better luck
here.)

Hi,

I found this documentation:
https://wiki.yoctoproject.org/wiki/images/e/e6/Custom_Users_Groups_in_Yocto1.1.pdf

We have a custom Yocto 1.6 Daisy based distribution and one of our
packages create one "central" user and 350 "support users".
All the support users get a secondary group, which is the primary group
of this central user.

The result is that the line for the primary group of the first user
became over 2800 bytes long in .../sysroot/genericx86-64/etc/group.

If another package (like cronie) that also uses "inherit useradd" is built
after our custom package, its do_install step fails at chown or chgrp.

If I manually edited the .../sysroot/genericx86-64/etc/group file so
the group(s) created by such packages are moved earlier than that
very long line, the build of these packages succeed.

If I move it after the very long line in .../etc/group again, and do
"bitbake -c cleanall cronie ; bitbake cronie", it fails again.

I found that chown/chgrp are provided by coreutils. I found a patch
in Fedora's coreutils src.rpm files (coreutils-getgrouplist.patch)
that is a suspicious contender that fixes such problems.

The same issue (a lot of users put into the same group, creating
a very long line in /etc/group) does not cause a problem with the
real chown/chgrp commands on Fedora 21 / 22.

I applied that patch to coreutils-native and coreutils and the problem
still occurred on Yocto 1.6.

Which commands are actually run as chown and chgrp from do_install()
in OpenEmbedded recipes? Because apparently, it's not the ones from
coreutils-native and not the host provided ones either.

Thanks in advance,
Zoltán Böszörményi

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/bitbake-devel/attachments/20150806/4d9e51d9/attachment-0002.html>


More information about the bitbake-devel mailing list