aboutsummaryrefslogtreecommitdiffstats
s6: the s6-applyuidgid program

s6
Software
skarnet.org

The s6-applyuidgid program

s6-applyuidgid executes a program with reduced privileges.

Interface

     s6-applyuidgid [ -z ] [ -u uid ] [ -g gid ] [ -G gidlist ] [ -U ] prog...
  • s6-applyuidgid sets its uid, gid and supplementary group list to the values given, then executes into prog.

Options

  • -u uid : set the process' user ID to uid
  • -g gid : set the process' group ID to gid
  • -G gidlist : set the process' supplementary group list to gidlist, which must be given as a comma-separated list of numeric GIDs, without spaces.
  • -U : set the process' user ID, group ID and supplementary group list to the values of the UID, GID and GIDLIST environment variables. If a -u, -g or -G option is given after -U, the command line value overrides the environment variable.
  • -z : unexport. The UID, GID and GIDLIST variables will be removed from the process environment.

Notes

  • s6-applyuidgid can only be run as root. Its main use is to drop root privileges before starting a daemon.
  • s6-applyuidgid is a more generic version of s6-setuidgid. It is used as a command line building block by some programs that rewrite their command line, such as s6-tcpserver.