首頁 > 運維 > linux運維 > 主體

linux切換使用者的指令是什麼

青灯夜游
發布: 2023-01-07 11:43:06
原創
95021 人瀏覽過

linux切換使用者的命令是“su”,該命令可以實現任何身份的切換,包括從普通用戶切換為root用戶、從root用戶切換為普通用戶之間的切換;語法格式為「su [選項] 使用者名稱」。

linux切換使用者的指令是什麼

本教學操作環境: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&#39; /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中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板