Linux su命令

Linux 命令大全 Linux 命令大全

Linux su命令用於變更為其他使用者的身份,除 root 外,需要鍵入該使用者的密碼。

使用權限:所有使用者。

語法

su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]

參數說明

  • -f 或 --fast 不必讀啟動檔(如 csh.cshrc 等),僅用於 csh 或 tcsh
  • -m -p 或 --preserve-environment 執行 su 時不改變環境變數
  • -c command 或 --command=command 變更為帳號為 USER 的使用者並執行指令(command)後再變回原來使用者
  • -s shell 或 --shell=shell 指定要執行的 shell (bash csh tcsh 等),預設值為 /etc/passwd 內的該使用者(USER) shell
  • --help 顯示說明文件
  • --version 顯示版本資訊
  • - -l 或 --login 這個參數加了之後,就好像是重新 login 為該使用者一樣,大部份環境變數(HOME SHELL USER等等)都是以該使用者(USER)為主,並且工作目錄也會改變,如果沒有指定 USER ,內定是 root
  • USER 欲變更的使用者帳號
  • ARG 傳入新的 shell 參數

實例

變更帳號為 root 並在執行 ls 指令後退出變回原使用者

su -c ls root

變更帳號為 root 並傳入 -f 參數給新執行的 shell

su root -f

變更帳號為 clsung 並改變工作目錄至 clsung 的家目錄(home dir)

su - clsung

切換用戶

hnlinux@xuhuhu.com:~$ whoami //顯示當前用戶
hnlinux
hnlinux@xuhuhu.com:~$ pwd //顯示當前目錄
/home/hnlinux
hnlinux@xuhuhu.com:~$ su root //切換到root用戶
密碼:

root@xuhuhu.com:/home/hnlinux# whoami
root
root@xuhuhu.com:/home/hnlinux# pwd
/home/hnlinux

切換用戶,改變環境變數

hnlinux@xuhuhu.com:~$ whoami //顯示當前用戶
hnlinux
hnlinux@xuhuhu.com:~$ pwd //顯示當前目錄
/home/hnlinux
hnlinux@xuhuhu.com:~$ su - root //切換到root用戶
密碼:

root@xuhuhu.com:/home/hnlinux# whoami
root
root@xuhuhu.com:/home/hnlinux# pwd //顯示當前目錄
/root

Linux 命令大全 Linux 命令大全