3.3.2 su指令

建好了帳號以後,下次登入時就可以用新帳號跟密碼進入系統囉,不過身為一個一般使用者兼系統的管理員,有時候必須要使用 root 帳號來進行系統管理的工作,這個時候就可以用 "su" 指令來暫時變身成 root:

su [-] [USERNAME]    暫時化身成其他使用者

"su" 後面沒有給任何參數的時候,預設就是化身成為 root,這個時候系統會要求你輸入 root 的密碼,只要輸入密碼正確,就會擁有 root 身分了,假如有加一個使用者名稱作為參數,則會化身成這個指定的使用者。另外,"su" 的後面加一個減號的話,表示啟動的環境會跟真的用 root 帳號登入的一樣,不加減號則會維持目前的環境,例如:

[cle@h2 cle]$ su
Password:
[root@h2 cle]# exit
exit
[cle@h2 cle]$ su -
Password:
[root@h2 /root]#

注意一下使用 "su" 指令前後,提示符號的使用者名稱是不是變了 :) 還有,當不加減號的時候,環境不變,所以提示符號裡目前的目錄還是 "cle",加減號以後就變到 "/root" 了。

"su" 在遠端連線 (telnet) 進入系統的時候會特別有用,RedHat Linux 因為安全考量,並不允許 root 身分從遠端 telnet 登入主機,所以要從遠端作系統管理工作的時候,一定要先用一個一般帳號 telnet 登入系統,再用 su 指令化身成 root 來工作。