參考網址:http://www.cnblogs.com/oradragon/archive/2012/08/30/2664551.html
linux 切換用戶基本語法
su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]
參數說明su是switch user切換用戶的縮寫
-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參數。
2. su [user] 和 su - [user]的區別:
su [user]切換到其他用戶,但是不切換環境變量,su - [user]則是完整的切換到新的用戶環境。
如:
[root@rac1 ~]# pwd --當前目錄
/root
[root@rac1 ~]# su oracle --使用su [user]
[oracle@rac1 root]$ pwd --當前目錄沒有改變,還是之前的用戶目錄
/root
[oracle@rac1 root]$ su - oracle --使用su - [user]
Password:
[oracle@rac1 ~]$ pwd --當前目錄變為當前用戶的家目錄
/home/oracle
[oracle@rac1 ~]$
所以建議大家在切換用戶時,盡量用su - [user],否則可能會出現環境變量不對的問題