Su
命令作用
su的作用是变更为其它使用者的身份,超级用户除外,需要键入该使用者的密码。
使用方式
su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]
参数说明
-f , –fast:不必读启动文件(如 csh.cshrc 等),仅用于csh或tcsh两种Shell。
-l , –login:加了这个参数之后,就好像是重新登陆一样,大部分环境变量(例如HOME、SHELL和USER等)都是以该使用者(USER)为主,并且工作目录也会改变。如果没有指定USER,缺省情况是root。
-m, -p ,–preserve-environment:执行su时不改变环境变数。
-c command:变更账号为USER的使用者,并执行指令(command)后再变回原来使用者。
–help 显示说明文件
–version 显示版本资讯
USER:欲变更的使用者账号,
ARG: 传入新的Shell参数。
例子
su -c ls root 变更帐号为 root 并在执行 ls 指令后退出变回原使用者。
[user1@centos6 ~]$ su - root -c "head -n 3 /etc/passwd" 对于命令参数要加上引号
su [用户名]
a>在root用户下, 输入 su 普通用户. 则切换至普通用户, 从root切换到变通用户不需要密码
b>在普通用户下, 输入 su [用户名]
提示 password:
输入用户的PASSWORD, 则切换至该用户
Sudo
/etc/sudoers 谁能作什么的一个列表,Sudo能用需要在这个文件中定义
#visudo 增加如下,加%代表用户组,ALL=(ALL)表示登录者的来源主机名,最后的ALL代表可执行的命令。NOPASSWD代表不需要密码直接可运行Sudo,限制多命令一定要写绝对路径,用逗号分开,多行用‘’,用!代表不能执行
%aixi ALL=(ALL) NOPASSWD: ALL
%aixi ALL=(ALL) NOPASSWD: /bin/ls,/bin/mkdir,/bin/rmdir,
/usr/bin/who,!/usr/bin/passwd root