[OE-core] [PATCH V2 7/7] useradd.bbclass: set PSEUDO_PASSWD consistent with root directory
Peter A. Bigot
pab at pabigot.com
Sun Nov 16 00:05:51 UTC 2014
When installing into a sysroot this class examines $D/etc/passwd for
content, then invokes useradd to make changes. Under pseudo useradd
attempts to look up user information in directories specified by
$PSEUDO_PASSWD. For opkg multilib installs $D is not always the same as
$IMAGE_ROOT, and the user might already be in the IMAGE_ROOT files,
causing a failure during rootfs population.
Fix this by ensuring the files pseudo looks at when doing useradd stuff
are the same ones that useradd.bbclass will be manipulating.
Signed-off-by: Peter A. Bigot <pab at pabigot.com>
---
meta/classes/useradd.bbclass | 2 ++
1 file changed, 2 insertions(+)
diff --git a/meta/classes/useradd.bbclass b/meta/classes/useradd.bbclass
index 3b70e80..0b9a843 100644
--- a/meta/classes/useradd.bbclass
+++ b/meta/classes/useradd.bbclass
@@ -24,6 +24,8 @@ if test "x$D" != "x"; then
# Installing into a sysroot
SYSROOT="$D"
OPT="--root $D"
+ # user/group lookups should match useradd/groupadd --root
+ export PSEUDO_PASSWD="$SYSROOT:${STAGING_DIR_NATIVE}"
fi
# If we're not doing a special SSTATE/SYSROOT install
--
1.8.5.5
More information about the Openembedded-core
mailing list