linux切換使用者的命令是“su”,該命令可以實現任何身份的切換,包括從普通用戶切換為root用戶、從root用戶切換為普通用戶之間的切換;語法格式為「su [選項] 使用者名稱」。
本教學操作環境:CentOS 6系統、Dell G3電腦。
linux切換使用者的指令是「su」。
u 是最簡單的使用者切換指令,透過該指令可以實現任何身分的切換,包括從普通使用者切換為root 使用者、從root 使用者切換為普通使用者以及普通使用者之間的切換。
普通用戶之間切換以及普通用戶切換至root 用戶,都需要知曉對方的密碼,只有正確輸入密碼,才能實現切換;從root 用戶切換至其他用戶,無需知曉對方密碼,直接可切換成功。
su 指令的基本格式如下:
# su [选项] 用户名
選項:
-
:目前用戶不僅切換為指定使用者的身份,同時所使用的工作環境也切換為此使用者的環境(包括PATH 變數、MAIL 變數等),使用- 選項可省略使用者名,預設會切換為root 使用者。
-l
:同- 的使用類似,也就是在切換使用者身分的同時,完整切換工作環境,但後面需要加入欲切換的使用者帳號。
-p
:表示切換為指定使用者的身份,但不改變目前的工作環境(不使用切換使用者的設定檔)。
-m
:和-p 一樣;
-c
指令:僅切換用戶執行一次命令,執行後自動切換回來,該選項後通常會帶有要執行的命令。
【範例1】
[lamp@localhost ~]$ su -root 密码: <-- 输入 root 用户的密码 #"-"代表连带环境变量一起切换,不能省略
【範例2】
[lamp@localhost ~]$ whoami lamp #当前我是lamp [lamp@localhost ~]$ su - -c "useradd user1" root 密码: #不切换成root,但是执行useradd命令添加user1用户 [lamp@localhost ~]$ whoami lamp #我还是lamp [lamp@localhost ~]$ grep "user1' /etc/passwd userl:x:502:504::/home/user1:/bin/bash #user用户已经添加了
除了像例2 這樣,執行一條指令後使用者身分會隨即自動切換回來,其他切換使用者的方式不會自動切換,只能使用exit 指令進行手動切換,例如:
[lamp@localhost ~]$ whoami lamp #当前我是lamp [lamp@localhost ~]$ su - lamp1 Password: <--输入lamp1用户的密码 #切换至 lamp1 用户的工作环境 [lamp@localhost ~]$ whoami lamp1 #什么也不做,立即退出切换环境 [lamp1@localhost ~]$ exit logout [lamp@localhost ~]$ whoami lamp
<strong>su</strong>
和 su -
的區別
注意,使用su 指令時,有- 和沒有- 是完全不同的,- 選項表示在切換使用者身分的同時,連目前使用的環境變數也切換成指定使用者的。我們知道,環境變數是用來定義作業系統環境的,因此如果系統環境沒有隨使用者身分切換,很多指令無法正確執行。
相關推薦:《Linux影片教學》
以上是linux切換使用者的指令是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!