'\" t
.\" Title: su
.\" Author: Julianne Frances Haugh
.\" Generator: DocBook XSL Stylesheets vsnapshot
.\" Date: 2022-11-08
.\" Manual: 用户命令
.\" Source: shadow-utils 4.13
.\" Language: Chinese Simplified
.\"
.TH "SU" "1" "2022-11-08" "shadow\-utils 4\&.13" "用户命令"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "名称"
su \- 更改用户 ID 或成为超级用户
.SH "大纲"
.HP \w'\fBsu\fR\ 'u
\fBsu\fR [\fI选项\fR] [\fI\-\fR] [\fI用户名\fR\ [\ \fIargs\fR\ ]]
.SH "描述"
.PP
The
\fBsu\fR
command is used to become another user during a login session\&. Invoked without a
\fBusername\fR,
\fBsu\fR
defaults to becoming the superuser\&. The
\fB\-\fR
option may be used to provide an environment similar to what the user would expect had the user logged in directly\&. The
\fB\-c\fR
option may be used to treat the next argument as a command by most shells\&.
.PP
Options are recognized everywhere in the argument list\&. You can use the
\fB\-\-\fR
argument to stop option parsing\&. The
\fB\-\fR
option is special: it is also recognized after
\fB\-\-\fR, but has to be placed before
\fBusername\fR\&.
.PP
如果合适,将提示用户输入一个密码。输入无效的密码会产生一个错误消息。所有的尝试,无论成功还是失败,都会被记录,以检测对系统的滥用。
.PP
The current environment is passed to the new shell\&. The value of
\fB$PATH\fR
is reset to
/bin:/usr/bin
for normal users, or
/sbin:/bin:/usr/sbin:/usr/bin
for the superuser\&. This may be changed with the
\fBENV_PATH\fR
and
\fBENV_SUPATH\fR
definitions in
/etc/login\&.defs\&.
.PP
在登录 shell 中以第一个字符是\(lq*\(rq标注的是子系统登录。给定的主目录将被用于用户实际登录的新文件系统的根。
.SH "选项"
.PP
The options which apply to the
\fBsu\fR
command are:
.PP
\fB\-c\fR, \fB\-\-command\fR\ \&\fICOMMAND\fR
.RS 4
Specify a command that will be invoked by the shell using its
\fB\-c\fR\&.
.sp
The executed command will have no controlling terminal\&. This option cannot be used to execute interactive programs which need a controlling TTY\&.
.RE
.PP
\fB\-\fR, \fB\-l\fR, \fB\-\-login\fR
.RS 4
提供一个类似于用户直接登录的环境,用户可能会希望这样。
.sp
When
\fB\-\fR
is used, it must be specified before any
\fBusername\fR\&. For portability it is recommended to use it as last option, before any
\fBusername\fR\&. The other forms (\fB\-l\fR
and
\fB\-\-login\fR) do not have this restriction\&.
.RE
.PP
\fB\-s\fR, \fB\-\-shell\fR\ \&\fISHELL\fR
.RS 4
将使用的 shell。
.sp
The invoked shell is chosen from (highest priority first):
.PP
.RS 4
The shell specified with \-\-shell\&.
.RE
.PP
.RS 4
If
\fB\-\-preserve\-environment\fR
is used, the shell specified by the
\fB$SHELL\fR
environment variable\&.
.RE
.PP
.RS 4
The shell indicated in the
/etc/passwd
entry for the target user\&.
.RE
.PP
.RS 4
/bin/sh
if a shell could not be found by any above method\&.
.RE
.sp
If the target user has a restricted shell (i\&.e\&. the shell field of this user\*(Aqs entry in
/etc/passwd
is not listed in
/etc/shells), then the
\fB\-\-shell\fR
option or the
\fB$SHELL\fR
environment variable won\*(Aqt be taken into account, unless
\fBsu\fR
is called by root\&.
.RE
.PP
\fB\-m\fR, \fB\-p\fR, \fB\-\-preserve\-environment\fR
.RS 4
Preserve the current environment, except for:
.PP
\fB$PATH\fR
.RS 4
reset according to the
/etc/login\&.defs
options
\fBENV_PATH\fR
or
\fBENV_SUPATH\fR
(see below);
.RE
.PP
\fB$IFS\fR
.RS 4
reset to
\(lq\(rq, if it was set\&.
.RE
.sp
If the target user has a restricted shell, this option has no effect (unless
\fBsu\fR
is called by root)\&.
.sp
Note that the default behavior for the environment is the following:
.PP
.RS 4
The
\fB$HOME\fR,
\fB$SHELL\fR,
\fB$USER\fR,
\fB$LOGNAME\fR,
\fB$PATH\fR, and
\fB$IFS\fR
environment variables are reset\&.
.RE
.PP
.RS 4
If
\fB\-\-login\fR
is not used, the environment is copied, except for the variables above\&.
.RE
.PP
.RS 4
If
\fB\-\-login\fR
is used, the
\fB$TERM\fR,
\fB$COLORTERM\fR,
\fB$DISPLAY\fR, and
\fB$XAUTHORITY\fR
environment variables are copied if they were set\&.
.RE
.PP
.RS 4
If
\fB\-\-login\fR
is used, the
\fB$TZ\fR,
\fB$HZ\fR, and
\fB$MAIL\fR
environment variables are set according to the
/etc/login\&.defs
options
\fBENV_TZ\fR,
\fBENV_HZ\fR,
\fBMAIL_DIR\fR, and
\fBMAIL_FILE\fR
(see below)\&.
.RE
.PP
.RS 4
If
\fB\-\-login\fR
is used, other environment variables might be set by the
\fBENVIRON_FILE\fR
file (see below)\&.
.RE
.sp
.RE
.SH "CAVEATS"
.PP
This version of
\fBsu\fR
has many compilation options, only some of which may be in use at any particular site\&.
.SH "配置文件"
.PP
The following configuration variables in
/etc/login\&.defs
change the behavior of this tool:
.SH "文件"
.PP
/etc/passwd
.RS 4
用户账户信息。
.RE
.PP
/etc/shadow
.RS 4
安全用户账户信息。
.RE
.PP
/etc/login\&.defs
.RS 4
Shadow 密码套件配置。
.RE
.SH "退出值"
.PP
On success,
\fBsu\fR
returns the exit value of the command it executed\&.
.PP
If this command was terminated by a signal,
\fBsu\fR
returns the number of this signal plus 128\&.
.PP
If su has to kill the command (because it was asked to terminate, and the command did not terminate in time),
\fBsu\fR
returns 255\&.
.PP
Some exit values from
\fBsu\fR
are independent from the executed command:
.PP
\fI0\fR
.RS 4
success (\fB\-\-help\fR
only)
.RE
.PP
\fI1\fR
.RS 4
System or authentication failure
.RE
.PP
\fI126\fR
.RS 4
The requested command was not found
.RE
.PP
\fI127\fR
.RS 4
The requested command could not be executed
.RE
.SH "参见"
.PP
\fBlogin\fR(1),
\fBlogin.defs\fR(5),
\fBsg\fR(1),
\fBsh\fR(1)\&.