runuid - run a program with specific user and group permissions
runuid [-hV] [-g group ] [-s | -S grplist ]
account program [ args ... ]
runuid runs program with the uid and gid set according to the user
and group ID of account.
If program does not contain a ``/'' slash character,
runuid will perform a shell-like search for the executable using the
PATH variable in the current environment.
runuid itself needs root privilege to run.
- -g group
- Group. Normally runuid sets the base group permission corresponding
to the group ID of the account. The -g option may be used to
specify a different base group permission.
- -h
- Help. Print a brief usage message to stderr and exit.
- -S grplist
- Supplemental (listed). Normally runuid sets only a single group
permission corresponding to the group ID of the account, or as
specified with the -g option. The -S option will
additionally set supplemental group permissions as given in the
grplist argument, a colon-delimited list of one or more arbitrary
group names as defined in /etc/group. The -S option and the
-s option are mutually exclusive.
- -s
- Supplemental (/etc/group). Normally runuid sets only a single group
permission corresponding to the group ID of the account, or as
specified with the -g option. The -s option will
additionally set all supplemental group permissions defined for the
account in /etc/group as described in initgroups(3).
The -s option and the -S option are mutually exclusive.
- -V
- Version. Print the version number to stderr and exit.
runuid exits with one of the following values:
- 0
- program was invoked and completed successfully. In this case, the
exit code is returned by the program, rather than by runuid
itself.
- 100
- runuid failed because of a usage error, such as an invalid
command-line option or argument. In this case, runuid prints a
brief error message and usage help to stderr on exit.
- 111
- runuid failed due to some system or resource error. In this case,
runuid prints a brief diagnostic message to stderr on exit.
- 1-127
- program was invoked and failed with its own non-zero exit
status.
Wayne Marshall, http://b0llix.net/perp/
runtools_intro(8), runargs(8), runargv0(8),
runchoom(8), rundetach(8), rundeux(8), runenv(8),
runfile(8), runlimit(8), runlock(8), runpause(8),
runsession(8), runtool(8), runtrap(8),
initgroups(3), setgroups(2)