su (Unix)
su命令,也被稱為「替代用戶」、「超級用戶」或「切換用戶」,是可以讓計算機操作者在虛擬控制台切換當前用戶帳戶的命令。
用法
在命令行中運行時,su會要求目標用戶的密碼。如果驗證通過,操作者將會授予該帳戶的權限,並且允許訪問該帳戶可以訪問的文件和目錄。
john@localhost:~$ su
密码:
root@localhost:/home/john# exit
登出
john@localhost:~$
此外,還可以切換到另一個不是超級用戶的帳戶,例如su jane。
john@localhost:~$ su jane
密码:
jane@localhost:/home/john$ exit
登出
john@localhost:~$
一般來說,管理員應該使用一個連字號(su -,等同於su - root),來啟動登錄shell。這樣,用戶可以獲得目標用戶的用戶環境:
john@localhost:~$ su - jane
密码:
jane@localhost:~$
相關的命令sudo也可以允許以另一個用戶的身份執行命令,但遵守一組的限制,以決定哪些用戶可以以什麼用戶身份執行什麼命令(通常是在配置文件/etc/sudoers中,最好使用visudo編輯)。與su不同的是,sudo驗證的是用戶自己的密碼,而不是目標用戶的(允許特定主機上的特定用戶執行特定命令,而不用共享密碼,同時減輕無人值守終端的風險)。
一些類Unix系統有wheel組,且只允許組內用戶su到root。[1]很難說這是否會降低安全風險,因為入侵者可能會輕易入侵其中一個帳戶。然而,由於理念不同,GNU su不支持wheel組。理查德·斯托曼認為,由於wheel組會阻止用戶使用泄露給他們root密碼,現有的管理員就可以欺壓普通用戶。[2]
參見
參考
- ^ Levi, Bozidar. UNIX Administration: A Comprehensive Sourcebook for Effective Systems and Network Management. CRC Press. 2002: 207. ISBN 0-8493-1351-1.
- ^ Why GNU su does not support the wheel group. [2013-07-31]. (原始內容存檔於2013-08-07).
外部連結
- su — GNU核心工具組手冊頁。
- 單一UNIX®規範第7期,由國際開放標準組織發布 – 參考,
- The su command(頁面存檔備份,存於網際網路檔案館) — by The Linux Information Project (LINFO)
- Definition of su — dictionary.die.net