Current File : //usr/share/man/zh_CN.UTF-8/man1m/su.1m
'\" te
.\" Copyright 1989 AT&T
.\" Copyright (c) 2004, 2011, Oracle and/or its affiliates.All rights reserved.
.TH su 1M "2011 年 4 月 26 日" "SunOS 5.11" "系统管理命令"
.SH 名称
su \- 成为超级用户或其他用户
.SH 用法概要
.LP
.nf
\fBsu\fR [\fB-\fR] [\fIusername\fR [arg...]]
.fi

.SH 描述
.sp
.LP
\fBsu\fR 命令允许用户在不注销的情况下成为另一个用户或者承担某个角色。缺省情况下 \fIusername\fR 是 \fBroot\fR(超级用户)。
.sp
.LP
要使用 \fBsu\fR,必须提供相应的口令(除非调用者已经是 \fBroot\fR)。如果口令不正确,\fBsu\fR 将创建一个新的 shell 进程,该进程将真实有效的用户 \fBID\fR、组 \fBID\fR 和补充组列表设置为指定的 \fIusername\fR 的相应内容。此外,新的 shell 的项目 ID 会设置为指定用户的缺省项目 ID。请参见 \fBgetprojent\fR(3PROJECT)、\fBsetproject\fR(3PROJECT)。新 shell 将是在 \fIusername\fR 的口令文件条目的 shell 字段中指定的 shell(请参见 \fBpasswd\fR(4))。如果未指定任何 shell,将使用 \fB/usr/bin/sh\fR(请参见 \fBsh\fR(1))。如果请求了超级用户特权,并且不能使用 \fBexec\fR(2) 调用超级用户的 shell,则使用 \fB/sbin/sh\fR 作为回退。要返回到正常用户 \fBID\fR 特权,请键入 \fBEOF\fR 字符 (CTRL-D) 退出新的 shell。
.sp
.LP
在命令行上提供的其他任何参数都将传递给新 shell。在使用 \fBsh\fR 之类的程序时,\fB-c\fR \fIstring\fR 形式的 \fIarg\fR 将使用 shell 执行 \fIstring\fR,\fB-r\fR 的 \fIarg\fR 为用户提供受限 shell。
.sp
.LP
要创建登录环境,命令 \fB“su –”\fR 将执行以下操作:
.RS +4
.TP
.ie t \(bu
.el o
除了已经传播的内容外,还会传播指定用户的环境中的 \fBLC*\fR 和 \fBLANG\fR 环境变量。
.RE
.RS +4
.TP
.ie t \(bu
.el o
传播用户环境中的 \fBTZ\fR。如果在用户的环境中没有 \fBTZ\fR,\fBsu\fR 将使用 \fB/etc/default/login\fR 中的 \fBTIMEZONE\fR 参数的 \fBTZ\fR 值。
.RE
.RS +4
.TP
.ie t \(bu
.el o
将 \fBMAIL\fR 设置为 \fB/var/mail/\fInew_user\fR\fR。
.RE
.sp
.LP
如果 \fBsu\fR 的第一个参数是连字符 (-),则将环境更改为用户以指定用户身份实际登录时应有的环境。否则将继承环境,但 \fB$\fR\fBPATH\fR\fB\fR 除外,它由 \fB/etc/default/su\fR 中的 \fBPATH\fR 和 \fBSU\fR\fBPATH\fR 控制。
.sp
.LP
所有使用 \fBsu\fR 成为其他用户的尝试都记录在日志文件 \fB/var/adm/sulog\fR 中(请参见 \fBsulog\fR(4))。
.SH 安全
.sp
.LP
\fBsu\fR 使用 \fBpam\fR(3PAM) 和服务名称 \fBsu\fR 进行验证、帐户管理和凭证建立。
.SH 示例
.LP
\fB示例 1 \fR成为用户 \fBbin\fR,同时保留以前导出的环境
.sp
.LP
要在成为用户 \fBbin\fR 的同时保留您以前导出的环境,请执行:

.sp
.in +2
.nf
example% \fBsu bin\fR
.fi
.in -2
.sp

.LP
\fB示例 2 \fR成为用户 \fBbin\fR,并更改为 \fBbin\fR 的登录环境
.sp
.LP
要成为用户 \fBbin\fR 但将环境更改为 \fBbin\fR 最初登录时的环境,请执行:

.sp
.in +2
.nf
example% \fBsu - bin\fR
.fi
.in -2
.sp

.LP
\fB示例 3 \fR使用用户 \fBbin\fR 的环境和权限执行命令
.sp
.LP
要使用用户 \fBbin\fR 的临时环境和权限执行命令,请键入:

.sp
.in +2
.nf
example% \fBsu - bin -c "\fIcommand args\fR"\fR
.fi
.in -2
.sp

.SH 环境变量
.sp
.LP
出于安全考虑,删除了带 \fBLD_\fR 前缀的变量。因此,在成为用户 \fBbin\fR 时,\fBsu bin\fR 将不会获取以前导出的带 \fBLD_\fR 前缀的变量。
.sp
.LP
如果未在环境中设置任何 \fBLC_*\fR 变量(\fBLC_CTYPE\fR、\fBLC_MESSAGES\fR、\fBLC_TIME\fR、\fBLC_COLLATE\fR、\fBLC_NUMERIC\fR 和 \fBLC_MONETARY\fR)(请参见 \fBenviron\fR(5)),则每个相应语言环境类别的 \fBsu\fR 运行行为由 \fBLANG\fR 环境变量的值确定。如果设置了 \fBLC_ALL\fR,则会使用其内容覆盖 \fBLANG\fR 和其他 \fBLC_*\fR 变量。如果在环境中未设以上任何变量,\fBsu\fR 的行为方式取决于 “C”(美国样式)语言环境。
.sp
.ne 2
.mk
.na
\fB\fBLC_CTYPE\fR\fR
.ad
.RS 15n
.rt  
确定 \fBsu\fR 如何处理字符。\fBLC_CTYPE\fR 设置为有效值时,\fBsu\fR 可以显示和处理包含适用于该语言环境的有效字符的文本和文件名。\fBsu\fR 可以显示和处理扩展 Unix 代码(Extended Unix Code, \fBEUC\fR)字符,其中任何一个单独的字符都可以为 \fB1\fR、\fB2\fR 或 \fB3\fR 字节宽。\fBsu\fR 也可以处理 \fB1\fR、\fB2\fR 或更多列宽度的 \fBEUC\fR 字符。在 “C” 语言环境中,只有 ISO 8859-1 中的字符有效。
.RE

.sp
.ne 2
.mk
.na
\fB\fBLC_MESSAGES\fR\fR
.ad
.RS 15n
.rt  
确定如何显示诊断和信息性消息。这包括消息的语言和风格,以及肯定性和否定性响应的正确形式。在 "C" 语言环境中,消息以程序自身中的缺省形式显示(大多数情况下,为美式英文)。
.RE

.SH 文件
.sp
.ne 2
.mk
.na
\fB\fB$\fR\fBHOME\fR\fB/.profile\fR\fR
.ad
.sp .6
.RS 4n
\fBsh\fR 和 \fBksh\fR 的用户登录命令
.RE

.sp
.ne 2
.mk
.na
\fB\fB/etc/passwd\fR\fR
.ad
.sp .6
.RS 4n
系统的口令文件
.RE

.sp
.ne 2
.mk
.na
\fB\fB/etc/profile\fR\fR
.ad
.sp .6
.RS 4n
系统范围的 \fBsh\fR 和 \fBksh\fR 登录命令
.RE

.sp
.ne 2
.mk
.na
\fB\fB/var/adm/sulog\fR\fR
.ad
.sp .6
.RS 4n
日志文件
.RE

.sp
.ne 2
.mk
.na
\fB\fB/etc/default/su\fR\fR
.ad
.sp .6
.RS 4n
此文件中的缺省参数包括的: 
.sp
.ne 2
.mk
.na
\fB\fBSULOG\fR\fR
.ad
.RS 11n
.rt  
如果已定义,则所有对其他用户的 \fBsu\fR 尝试都会记录在指示的文件中。
.RE

.sp
.ne 2
.mk
.na
\fB\fBCONSOLE\fR\fR
.ad
.RS 11n
.rt  
如果已定义,则所有为了 \fBroot\fR 而 \fBsu\fR 的尝试都会记录在控制台上。
.RE

.sp
.ne 2
.mk
.na
\fB\fBPATH\fR\fR
.ad
.RS 11n
.rt  
缺省路径 (\fB/usr/bin:\fR)
.RE

.sp
.ne 2
.mk
.na
\fB\fBSU\fR\fBPATH\fR\fR
.ad
.RS 11n
.rt  
调用 \fBsu\fR 的用户到 \fBroot\fR 的缺省路径。 (\fB/usr/sbin:/usr/bin\fR)
.RE

.sp
.ne 2
.mk
.na
\fB\fBSYSLOG\fR\fR
.ad
.RS 11n
.rt  
确定是否应使用 \fBsyslog\fR(3C) \fBLOG_AUTH\fR 工具记录所有 \fBsu\fR 尝试。\fBLOG_NOTICE\fR 消息是为 \fBsu\fR 向 root 生成的,\fBLOG_INFO\fR 消息是为 \fBsu\fR 向其他用户生成的,\fBLOG_CRIT\fR 消息是为失败的 \fBsu\fR 尝试生成的。
.RE

.RE

.sp
.ne 2
.mk
.na
\fB\fB/etc/default/login\fR\fR
.ad
.sp .6
.RS 4n
此文件中的缺省参数包括的:
.sp
.ne 2
.mk
.na
\fB\fBSLEEPTIME\fR\fR
.ad
.RS 13n
.rt  
如果存在,则设置要等待的秒数,达到此秒数后会将登录失败消息输出到屏幕并允许另一次登录尝试。缺省值为 \fB4\fR 秒。最小值为 \fB0\fR 秒。最大值为 \fB5\fR 秒。
.sp
\fBsu\fR 和 \fBlogin\fR(1) 都受 \fBSLEEPTIME\fR 的值影响。
.RE

.sp
.ne 2
.mk
.na
\fB\fBTIMEZONE\fR\fR
.ad
.RS 13n
.rt  
设置 shell 的 TZ 环境变量。
.RE

.RE

.SH 属性
.sp
.LP
有关下列属性的说明,请参见 \fBattributes\fR(5):
.sp

.sp
.TS
tab() box;
cw(2.75i) |cw(2.75i) 
lw(2.75i) |lw(2.75i) 
.
属性类型属性值
_
可用性system/core-os
.TE

.SH 另请参见
.sp
.LP
\fBcsh\fR(1)、\fBenv\fR(1)、\fBksh\fR(1)、\fBlogin\fR(1)、\fBroles\fR(1)、\fBsh\fR(1)、\fBsyslogd\fR(1M)、\fBexec\fR(2)、\fBgetprojent\fR(3PROJECT)、\fBsetproject\fR(3PROJECT)、\fBpam\fR(3PAM)、\fBpam_authenticate\fR(3PAM)、\fBpam_acct_mgmt\fR(3PAM)、\fBpam_setcred\fR(3PAM)、\fBpam.conf\fR(4)、\fBpasswd\fR(4)、\fBprofile\fR(4)、\fBsulog\fR(4)、\fBsyslog\fR(3C)、\fBattributes\fR(5)、\fBenviron\fR(5)