外置命令。
[root@localhost ~]# su [選項] 用戶名
- su 命令的選項
選項 | 功能 |
---|---|
- | 當前用戶不僅切換為指定用戶的身份仙蛉,同時所用的工作環(huán)境也切換為此用戶的環(huán)境(包括 PATH 變量、MAIL 變量等)碱蒙,使用 - 選項可省略用戶名荠瘪,默認會切換為 root 用戶 |
-l | 同 - 的使用類似,也就是在切換用戶身份的同時赛惩,完整切換工作環(huán)境哀墓,但后面需要添加欲切換的使用者賬號 |
-p | 表示切換為指定用戶的身份,但不改變當前的工作環(huán)境(不使用切換用戶的配置文件) |
-m | 和 -p 一樣 |
-c 命令 | 僅切換用戶執(zhí)行一次命令喷兼,執(zhí)行后自動切換回來篮绰,該選項后通常會帶有要執(zhí)行的命令 |
- 示例
[lamp@localhost ~]$ su -root
密碼: <-- 輸入 root 用戶的密碼
# "-"代表連帶環(huán)境變量一起切換,不能省略
[lamp@localhost ~]$ whoami
lamp
#當前我是lamp
[lamp@localhost ~]$ su - -c "useradd user1" root
密碼:
# 不切換成root季惯,但是執(zhí)行useradd命令添加user1用戶
[lamp@localhost ~]$ whoami
lamp
# 我還是lamp
[lamp@localhost ~]$ grep "user1' /etc/passwd
userl:x:502:504::/home/user1:/bin/bash
# user用戶已經(jīng)添加了
1. su 和 su - 的區(qū)別
注意吠各,使用 su 命令時,有 - 和沒有 - 是完全不同的星瘾,- 選項表示在切換用戶身份的同時走孽,連當前使用的環(huán)境變量也切換成指定用戶的。我們知道琳状,環(huán)境變量是用來定義操作系統(tǒng)環(huán)境的磕瓷,因此如果系統(tǒng)環(huán)境沒有隨用戶身份切換,很多命令無法正確執(zhí)行。