su
NAME(名稱)
su - 運行替換用戶和組標識的shell
SYNOPSIS(總覽)
su [OPTION]... [-] [USER [ARG]...]
DESCRIPTION(描述)
修改有效用戶標識和組標識為USER的.
-, -l, --login
使得shell為可登錄的shell
-c, --commmand=COMMAND
傳遞單個COMMAND給-c的shell.
-f, --fast
傳遞-f給shell(針對csh或tcsh)
-m, --preserve-environment
不重置環(huán)境變量
-p 與-m同
-s, --shell=SHELL
如果/etc/shells允許,運行SHELL.
--help 顯示幫助并退出
--version
輸出版本信息并退出
單一的-意味著-l.如果沒有給定USER,則假定為root.
例:
[root@Blackghost ~] su zhangying #切換用戶,原用戶環(huán)境變量
[root@Blackghost ~] su - zhangying #切換用戶,新用戶環(huán)境變量
[zhangying@Blackghost ~] su -c ls root #切換用戶執(zhí)行命令,執(zhí)行后返回原用戶
sudo
用戶也可以通過su切換到root用戶運行命令。然而與su的啟動一個root shell允許用戶運行之后的所有的命令不同,sudo可以針對單個命令授予臨時權限。sudo僅在需要時授予用戶權限,減少了用戶因為錯誤執(zhí)行命令損壞系統(tǒng)的可能性。sudo也可以用來以其他用戶身份執(zhí)行命令。此外,sudo可以記錄用戶執(zhí)行的命令,以及失敗的特權獲取。
選項:
-a type 使用指定的 BSD 認證類型
-b 在后臺運行命令
-C fd 關閉所有 >= fd 的文件描述符
-E 在執(zhí)行命令時保留用戶環(huán)境
-e 編輯文件而非執(zhí)行命令
-g group 以指定的用戶組執(zhí)行命令
-H 將 HOME 變量設為目標用戶的主目錄。
-h 顯示幫助消息并退出
-i [command] 以目標用戶身份運行一個登錄 shell
-K 完全移除時間戳文件
-k 無效的時間戳文件
-l[l] command 列出用戶能執(zhí)行的命令
-n 非交互模式,將不提示用戶
-P 保留組向量,而非設置為目標的組向量
-p prompt 使用指定的密碼提示
-S 從標準輸入讀取密碼
-s [command] 以目標用戶身份運行 shell
-U user 在列表時,列出指定用戶的權限
-u user 以指定用戶身份運行命令(或編輯文件)
-V 顯示版本信息并退出
-v 更新用戶的時間戳而不執(zhí)行命令
-- 停止處理命令行參數(shù)
例:
[root@Blackghost ~] sudo -u tank ls #以tank用戶,來執(zhí)行l(wèi)s命令
[zhangying@Blackghost ~] sudo touch test #以root賬戶來建一個文件test,為空默認是root用戶