[yocto] Build/install question
Gary Thomas
gary at mlbassoc.com
Fri Jul 26 13:27:45 PDT 2013
On 2013-07-26 10:15, Gary Thomas wrote:
> One final tidy-up for my Amanda recipe. In do_install() I have:
> install -d -m 0777 -o amandabackup -g amandabackup ${D}/amanda
> install -d -m 0777 -o amandabackup -g amandabackup ${D}/amanda/vtapes/slot{1,2,3,4}
> install -d -m 0777 -o amandabackup -g amandabackup ${D}/amanda/holding
> install -d -m 0777 -o amandabackup -g amandabackup ${D}/amanda/state/{curinfo,log,index}
>
> The problem I have is that /amanda and /amanda/holding end up with
> the correct file owner/group, but the others (anything that has
> multiple names) end up being owned by 'root'. When I install my package,
> I get this on the target:
> # ls -lR /amanda/
> /amanda/:
> total 3
> drwxr-xr-x 2 amandabackup amandabackup 1024 Jul 26 2013 holding
> drwxr-xr-x 5 root root 1024 Jul 26 15:44 state
> drwxr-xr-x 6 root root 1024 Jul 26 15:44 vtapes
>
> /amanda/holding:
> total 0
>
> /amanda/state:
> total 3
> drwxr-xr-x 2 amandabackup amandabackup 1024 Jul 26 2013 curinfo
> drwxr-xr-x 2 amandabackup amandabackup 1024 Jul 26 2013 index
> drwxr-xr-x 2 amandabackup amandabackup 1024 Jul 26 2013 log
>
> /amanda/state/curinfo:
> total 0
>
> /amanda/state/index:
> total 0
>
> /amanda/state/log:
> total 0
>
> /amanda/vtapes:
> total 4
> drwxr-xr-x 2 amandabackup amandabackup 1024 Jul 26 2013 slot1
> drwxr-xr-x 2 amandabackup amandabackup 1024 Jul 26 2013 slot2
> drwxr-xr-x 2 amandabackup amandabackup 1024 Jul 26 2013 slot3
> drwxr-xr-x 2 amandabackup amandabackup 1024 Jul 26 2013 slot4
>
> /amanda/vtapes/slot1:
> total 0
>
> /amanda/vtapes/slot2:
> total 0
>
> /amanda/vtapes/slot3:
> total 0
>
> /amanda/vtapes/slot4:
> total 0
>
> Is this to be expected, or is it a bug? If so, where do I look
> and/or report it?
>
A little experiment shows that the problem is only with the directories
that are implicitly created, e.g. /amanda/state/
Indeed, this seems to be how install works and bitbake is using the
native host version:
root at zeus:/tmp# install -d -m 0755 -o gthomas -g gthomas /tmp/this/is/a/long/dir/tree
root at zeus:/tmp# ls -lR /tmp/this
/tmp/this:
total 4
drwxr-xr-x 3 root root 4096 Jul 26 14:24 is
/tmp/this/is:
total 4
drwxr-xr-x 3 root root 4096 Jul 26 14:24 a
/tmp/this/is/a:
total 4
drwxr-xr-x 3 root root 4096 Jul 26 14:24 long
/tmp/this/is/a/long:
total 4
drwxr-xr-x 3 root root 4096 Jul 26 14:24 dir
/tmp/this/is/a/long/dir:
total 4
drwxr-xr-x 2 gthomas gthomas 4096 Jul 26 14:24 tree
/tmp/this/is/a/long/dir/tree:
total 0
All of the intermediate directories are owned by 'root', not
the designated owner.
Looks like I'll just work around this one...
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
More information about the yocto
mailing list