On Wed, Feb 20, 2019 at 10:10:01AM -0500, Jon Ringle wrote: > On Wed, Feb 20, 2019 at 9:42 AM Michael Olbrich <[email protected]> > 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 <[email protected]> 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)
Another idea: This is in ptxdist or your BSP. What are the files permissions there? > > > 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? V> > > > > 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 [...] This looks all ok. Michael -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ ptxdist mailing list [email protected]
