[OE-core] Regression bug: dbus messagebus user generation is wrong

Martin Jansa martin.jansa at gmail.com
Thu Dec 22 16:10:55 UTC 2011


On Thu, Dec 22, 2011 at 09:52:43AM -0600, Mark Hatle wrote:
> On 12/22/11 7:17 AM, Martin Jansa wrote:
> ...
> 
> > /********* logs *************/
> > Checking ERRORs in log.do_rootfs files
> > ============== correct om-gta02:
> > Installing base-passwd (3.5.22-r9) to root...
> > Downloading file:/OE/shr-core/tmp-eglibc/deploy/ipk/armv4t/base-passwd_3.5.22-r9_armv4t.ipk.
> > Running groupadd commands...
> > /usr/sbin/nscd: Only root is allowed to use this option!
> > /usr/sbin/nscd: Only root is allowed to use this option!
> > /usr/sbin/nscd: Only root is allowed to use this option!
> 
> We need to track down that error above and figure out what it means.  It could 
> be that groupadd is attempting to run a system helper that it shouldn't be. 
> (nscd should never be consulted when we are running through pseudo for 
> password/group calculations...)
> 
> ...
> 
> > ============== wrong nokia900:
> > Installing dbus-1 (1.4.16-r2) to root...
> > Downloading file:/OE/shr-core/tmp-eglibc/deploy/ipk/armv7a-vfp-neon/dbus-1_1.4.16-r2_armv7a-vfp-neon.ipk.
> > Running groupadd commands...
> > grep: /OE/shr-core/tmp-eglibc/work/nokia900-oe-linux-gnueabi/shr-image-2.0-r20/rootfs//etc/group: No such file or directory
> > groupadd: cannot open /etc/group
> > Running useradd commands...
> > grep: /OE/shr-core/tmp-eglibc/work/nokia900-oe-linux-gnueabi/shr-image-2.0-r20/rootfs//etc/passwd: No such file or directory
> > useradd: group '1000' does not exist
> > useradd: the GROUP= configuration in /etc/default/useradd will be ignored
> > useradd: cannot open /etc/passwd
> > ...
> 
> Ya, that is definitely broken.  W/o the files then the groupadd/useradd won't 
> function properly and the install is likely a failure.
> 
> On other systems I work with, we -always- install the passwd/group files onto 
> the system -first-.  Then we perform the regular installation procedure.  I 
> wonder if we may have to do something like that within oe-core to force the 
> proper ordering.
> 
> It would be interesting to me to see the install order that was selected in this 
> case.  It could be that opkg either is missing some critical dependency 
> information -- or perhaps what we need simply can't be specified.
> 
> In other systems I've worked with, the base-passwd packages has been a 
> requirement of the libc package.  Since libc generally gets installed early in 
> the process it usually enforces it to be first.  I'm not sure if OE-core has 
> that same dep.  (Maybe we simply need any package that has files != root:root 
> have a dep on the passwd files?  Just thinking outloud here.. I'm not sure thats 
> really a good idea.)

dbus-1 .ipk file for all 4 architectures here has
Depends: update-rc.d, libdbus-1-3 (>= 1.4.16), libc6 (>= 2.14), shadow, libexpat1 (>= 2.0.1), base-passwd
so the RDEPENDS added by useradd.bbclass worked fine.

But for some reason opkg fix from
http://git.openembedded.org/openembedded-core/commit/?id=2feba313c991170747381c7cf821a45c2cd04632
wasn't enough to ensure that base-passwd was installed before dbus-1

and it probably isn't caused by circular dependency which were allowed by
http://git.openembedded.org/openembedded-core/commit/?id=5a2b67b8faad3dd5417ba89d8e82ca564753ccc9
because I have this in very similar images (same image just different
MACHINE) and I had this even before this patch (in build with all
circular dependencies broken by RRECOMMENDS).

Cheers,

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20111222/faa9f3d0/attachment-0002.sig>


More information about the Openembedded-core mailing list