From: Jon Ringle <jon@ringle.org>
To: ptxdist@pengutronix.de
Subject: Re: [ptxdist] strange permission behavior
Date: Wed, 20 Feb 2019 10:10:01 -0500 [thread overview]
Message-ID: <CAMwGMjyOfN_fvDVVuvDtT2nB-i=bVovSAuPGYOAv4tEU6z-=yQ@mail.gmail.com> (raw)
In-Reply-To: <20190220144202.pilz3kgql5k3hqz5@pengutronix.de>
[-- Attachment #1.1: Type: text/plain, Size: 4458 bytes --]
On Wed, Feb 20, 2019 at 9:42 AM Michael Olbrich <m.olbrich@pengutronix.de>
wrote:
> On Wed, Feb 20, 2019 at 09:09:18AM -0500, Jon Ringle wrote:
> > On Wed, Feb 20, 2019 at 8:22 AM Ian Abbott <abbotti@mev.co.uk> wrote:
> >
> > > On 20/02/2019 13:17, Ian Abbott wrote:
> > > > On 20/02/2019 00:59, Jon Ringle wrote:
> > > >> I've got a strange permission problem when I build on our build
> server
> > > >> that was recently updated from Ubuntu-14.04 to Ubuntu-16.04.
> > > >>
> > > >> On our Ubuntu-16.04 server, on most of the platform/packages/
> > > >> subdirectories the packages are getting created with other having no
> > > >> permissions at all:
> > > >>
> > > >> rootfs/platform-ec1c/packages$ tree -d -L 1 -p
> > > >> .
> > > >> ├── [drwxr-x---] attr-2.4.47
> > > >> ├── [drwxr-x---] avahi-0.7
> > > >> ├── [drwxr-x---] bash-4.3.30
> > > >> ├── [drwxr-x---] boost_1_67_0
> > > >> ├── [drwxr-x---] busybox-1.29.3
> > > >> ├── [drwxr-x---] coreutils-8.29
> > > >> ...
> > > >>
> > > >> This results in all files contained within those directories to also
> > > >> have no perms for other, and get installed on my target in the same
> > > >> way. This in turn then causes permission problems to occur.
> > > >>
> > > >> I'm at a loss as to what to look for to resolve this problem.
> > > >>
> > > >> Suggestions?
> > > >
> > > > I think you are building with umask 0027, so files are created with
> no
> > > > permissions for 'other' users. This should not affect the contents
> of
> > > > the platform-ec1c/packages/*.ipk files, or the contents of the
> > > > platform-ec1c/root/ directory, or the contents of the
> > > > platform-ec1c/images/root.* images, which should all contain files
> with
> > > > the correct permissions for the target.
> > >
> > > Correction: The platform-ec1c/root/ directory contents do not have the
> > > correct ownership for the target, but the file mode bits should be
> correct.
> > >
> > >
> > I also thought that perhaps it was a umask issue, but as you can see
> below,
> > umask is 0022, which should be ok.
> > The permission problem that I am having on the target is that
> > systemd-networkd.service won't start because it can't read the
> > configuration files below. These files are installed in systemd.make via:
> >
> > ifdef PTXCONF_SYSTEMD_NETWORK
> > @$(call install_tree, systemd, 0, 0, -, /usr/lib/systemd/network)
> > @$(call install_alternative_tree, systemd, 0, 0,
> > /usr/lib/systemd/network)
> > endif
> > @$(call install_alternative, systemd, 0, 0, 0644, \
> > /usr/lib/systemd/network/99-default.link)
>
> Right, install_alternative_tree picks the source file permissions. The
> question is, why are those incorrect?
>
> I've come across some issues with fakeroot and permissions elsewhere. Can
> you run the attached script with the fakeroot from sysroot-host/ and send
> the results?
>
>
jringle@dev-atl-bamb01:/srv/gpec-build/rootfs/platform-ec1c/sysroot-host/bin$
./fakeroot ~/fake-test
fakeroot: preload library `libfakeroot.so' not found, aborting.
jringle@dev-atl-bamb01:/srv/gpec-build/rootfs/platform-ec1c/sysroot-host/bin$
cd ../../..
jringle@dev-atl-bamb01:/srv/gpec-build/rootfs$ ptxdist bash
[ptx] jringle@dev-atl-bamb01:/srv/gpec-build/rootfs$ which fakeroot
/srv/gpec-build/rootfs/platform-ec1k/sysroot-host/bin/fakeroot
[ptx] jringle@dev-atl-bamb01:/srv/gpec-build/rootfs$ fakeroot ~/fake-test
-rw-r--r-- 1 0 0 0 Feb 20 15:08 empty
-rw-r--r-- 1 0 0 0 Feb 20 15:08 empty-a
-rw-r--r-- 1 0 0 0 Feb 20 15:08 empty-r
# file: empty
# owner: 0
# group: 0
user::rw-
group::r--
other::r--
# file: empty-a
# owner: 0
# group: 0
user::rw-
group::r--
other::r--
# file: empty-r
# owner: 0
# group: 0
user::rw-
group::r--
other::r--
[ptx] jringle@dev-atl-bamb01:/srv/gpec-build/rootfs$ exit
exit
jringle@dev-atl-bamb01:/srv/gpec-build/rootfs$ which fakeroot
/usr/bin/fakeroot
jringle@dev-atl-bamb01:/srv/gpec-build/rootfs$ fakeroot ~/fake-test
-rw-r--r-- 1 0 0 0 Feb 20 15:08 empty
-rw-r--r-- 1 0 0 0 Feb 20 15:08 empty-a
-rw-r--r-- 1 0 0 0 Feb 20 15:08 empty-r
# file: empty
# owner: 0
# group: 0
user::rw-
group::r--
other::r--
# file: empty-a
# owner: 0
# group: 0
user::rw-
group::r--
other::r--
# file: empty-r
# owner: 0
# group: 0
user::rw-
group::r--
other::r--
[-- Attachment #1.2: Type: text/html, Size: 6010 bytes --]
[-- Attachment #2: Type: text/plain, Size: 91 bytes --]
_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
next prev parent reply other threads:[~2019-02-20 15:10 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-02-20 0:59 Jon Ringle
2019-02-20 13:17 ` Ian Abbott
2019-02-20 13:22 ` Ian Abbott
2019-02-20 14:09 ` Jon Ringle
2019-02-20 14:42 ` Michael Olbrich
2019-02-20 15:10 ` Jon Ringle [this message]
2019-02-20 15:20 ` Michael Olbrich
2019-02-20 15:29 ` Jon Ringle
2019-02-20 15:43 ` Michael Olbrich
2019-02-21 13:47 ` Jon Ringle
2019-02-20 14:23 ` Michael Olbrich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAMwGMjyOfN_fvDVVuvDtT2nB-i=bVovSAuPGYOAv4tEU6z-=yQ@mail.gmail.com' \
--to=jon@ringle.org \
--cc=ptxdist@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox