chcon — change file security context



chcon [OPTION...] [ −u USER ] [ −r ROLE ] [ −l RANGE ] [ −t TYPE ] FILE...

chcon [OPTION...] −−reference=RFILE FILE...


Change the SELinux security context of each FILE to CONTEXT. With −−reference, change the security context of each FILE to that of RFILE.

Mandatory arguments to long options are mandatory for short options too.


affect the referent of each symbolic link (this is the default), rather than the symbolic link itself

−h, −−no−dereference

affect symbolic links instead of any referenced file

−u, −−user=USER/

set user USER in the target security context

−r, −−role=ROLE/

set role ROLE in the target security context

−t, −−type=TYPE/

set type TYPE in the target security context

−l, −−range=RANGE/

set range RANGE in the target security context


do not treat '/' specially (the default)


fail to operate recursively on '/'


use RFILE's security context rather than specifying a CONTEXT value

−R, −−recursive

operate on files and directories recursively

−v, −−verbose

output a diagnostic for every file processed

The following options modify how a hierarchy is traversed when the −R option is also specified. If more than one is specified, only the final one takes effect.


if a command line argument is a symbolic link to a directory, traverse it


traverse every symbolic link to a directory encountered


do not traverse any symbolic links (default)


display this help and exit


output version information and exit


Written by Russell Coker and Jim Meyering.


GNU coreutils online help: <>

Report any translation bugs to <>


Full documentation <>

or available locally via: info '(coreutils) chcon invocation'


Copyright © 2022 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <>.

This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.