SUNWcsu
To use su, the appropriate password must be supplied (unless the invoker is already root). If the password is correct, su creates a new shell process that has the real and effective user ID , group ID s, and supplementary group list set to those of the specified username. The new shell will be the shell specified in the shell field of username’s password file entry (see passwd(4) ). If no shell is specified, /usr/bin/sh is used (see sh(1) ). To return to normal user ID privileges, type an EOF character (CTRL-D ) to exit the new shell.
Any additional arguments given on the command line are passed to the new shell. When using programs such as sh, an arg of the form -c string executes string using the shell and an arg of -r gives the user a restricted shell.
If the first argument to su is ‘ - ’ (dash), the environment will be changed to what would be expected if the user actually logged in as the specified user. This is accomplished by invoking the program used as the shell with a first argument value whose initial character is ‘ - ’ (dash), thus simulating a login. If the first argument to su is not ‘ - ’ (dash), the environment is passed along unchanged, with the exception of $PATH , which is controlled by PATH and SUPATH in /etc/default/su.
All attempts to become another user using su are logged in the log file /var/adm/sulog (see sulog(4) ).
example% su bin
To become user bin but change the environment to what would be expected if bin had originally logged in, execute:
example% su - bin
To execute command with the temporary environment and permissions of user bin, type:
example% su - bin -c "command args"
If any of the LC_*
variables ( LC_CTYPE, LC_MESSAGES, LC_TIME,
LC_COLLATE, LC_NUMERIC,
and LC_MONETARY
) (see environ(5)
) are not
set in the environment, the operational behavior of su for each corresponding
locale category is determined by the value of the LANG
environment variable.
If LC_ALL
is set, its contents are used to override both the LANG
and
the other LC_*
variables. If none of the above variables are set in the
environment, the "C" (U.S. style) locale determines how su behaves.
- SULOG:
- If defined, all attempts to su to another user are logged in the indicated file.
- CONSOLE:
- If defined, all attempts to su to root are logged on the console.
- PATH:
- Default path. (/usr/bin:)
- SUPATH:
- Default path for a user invoking su to root. (/usr/sbin:/usr/bin)
- SYSLOG:
- Determines whether the syslog(3) LOG_AUTH facility should be used to log all su attempts. LOG_NOTICE messages are generated for su’s to root, LOG_INFO messages are generated for su’s to other users, and LOG_CRIT messages are generated for failed su attempts.