On Wed, Feb 20, 2019 at 01:22:25PM +0000, Ian Abbott 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,
This makes no sense. I can see that (with umask 0027) the directories may have this mode because we create them with 'mkdir' in ptxd_make_world_install_prepare() and no mode is set. But the files should have the correct permissions. E.g. 'attr' installs all files with explicitly specified modes, so that should be independent of the umask. > > > 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. We explicitly set the mode in install_copy, so for the most part it should be correct regardless of the permissions in packages/. The exceptions are install_tree, install_glob, etc. Here we pick the mode from the source file. So there may be some issues with directory permissions. > Correction: The platform-ec1c/root/ directory contents do not have the > correct ownership for the target, but the file mode bits should be correct. For the most part. We also skip any suid bits because they don't make sense without the ownership. 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]
