GNU bug report logs -
#20616
mkdir: -p breaks -Z
Previous Next
Reported by: Hannes Reich <hannes <at> skynet.ie>
Date: Wed, 20 May 2015 15:30:06 UTC
Severity: normal
Done: Pádraig Brady <P <at> draigBrady.com>
Bug is archived. No further changes may be made.
Full log
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
The "-Z" (set SELinux context) option to mkdir appears to have no effect
when "-p" (no error if existing, create parents) is also specified.
For example, on my CentOS 7 system, the correct context for
subdirectories of "/home" is "user_home_dir_t", but when I create such a
directory with "mkdir -p -Z", it has the "home_root_t" context:
# rm -rf /home/with-p
# mkdir -p -Z /home/with-p
# ls -Zd /home/with-p
drwxr-xr-x. root root unconfined_u:object_r:home_root_t:s0 /home/with-p
#
That's wrong. Running restorecon(1) fixes it:
# restorecon -v /home/with-p
restorecon reset /home/with-p context
unconfined_u:object_r:home_root_t:s0->unconfined_u:object_r:user_home_dir_t:s0
#
Without the "-p" option, "-Z" works as expected:
# mkdir -Z /home/without-p
# ls -Zd /home/without-p
drwxr-xr-x. root root unconfined_u:object_r:user_home_dir_t:s0
/home/without-p
# restorecon -v /home/without-p
#
The coreutils version in CentOS 7 is 8.22.
coreutils-8.23 compiled from source has the same behaviour.
This bug report was last modified 10 years and 80 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.