[OE-core] [PATCH 1/1] image_types.bbclass: add --numeric-owner option to tar command

Richard Purdie richard.purdie at linuxfoundation.org
Fri Oct 18 14:57:16 UTC 2013


On Fri, 2013-10-18 at 15:47 +0800, Qi.Chen at windriver.com wrote:
> From: Chen Qi <qi.chen at windriver.com>
> 
> If the same username exists on both target and the build host, but
> the uids differ, and we start target via NFS, then the uid for the
> user will be incorrect on target.
> 
> For example, if postfix's uid on host is 119 and on target is 1024,
> then if we start target via NFS, the uid for postfix will be 119.
> 
> The root cause is that when we use runqemu-extract-sdk to generate
> the NFS rootfs for later use, the tar command will respect the username
> instead of uid. So if PSEUDO_PASSWD environment is not set correctly,
> the host /etc/passwd will be used, resulting in wrong uids.
> 
> The situation for gid is completely analogous to that of uid.
> 
> It's almost impossible for the runqemu-extract-sdk to guess the correct
> location of the needed password file merely based on the target tarball
> name.
> 
> This patch solves this problem by adding the '--numeric-owner' option
> to the tar command so that the username/groupname is not recorded in
> the tarball. In this situation, we'll always get the correct uid/gid
> after extracting the tarball.
> 
> [YOCTO #5364]
> 
> Signed-off-by: Chen Qi <Qi.Chen at windriver.com>
> ---
>  meta/classes/image_types.bbclass |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Er, isn't the right fix to fix runqemu-extract-sdk to use numeric IDs
then rather than butcher all the tarballs we create?

Cheers,

Richard




More information about the Openembedded-core mailing list