Su
命令作用
su的作用是變更為其它使用者的身份,超級用戶除外,需要鍵入該使用者的密碼。
使用方式
su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]
參數說明
-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參數。
例子
su -c ls root 變更帳號為 root 並在執行 ls 指令后退出變回原使用者。
[user1@centos6 ~]$ su - root -c "head -n 3 /etc/passwd" 對於命令參數要加上引號
su [用戶名]
a>在root用戶下, 輸入 su 普通用戶. 則切換至普通用戶, 從root切換到變通用戶不需要密碼
b>在普通用戶下, 輸入 su [用戶名]
提示 password:
輸入用戶的PASSWORD, 則切換至該用戶
Sudo
/etc/sudoers 誰能作什么的一個列表,Sudo能用需要在這個文件中定義
#visudo 增加如下,加%代表用戶組,ALL=(ALL)表示登錄者的來源主機名,最后的ALL代表可執行的命令。NOPASSWD代表不需要密碼直接可運行Sudo,限制多命令一定要寫絕對路徑,用逗號分開,多行用‘\’,用!代表不能執行
%aixi ALL=(ALL) NOPASSWD: ALL
%aixi ALL=(ALL) NOPASSWD: /bin/ls,/bin/mkdir,/bin/rmdir,\
/usr/bin/who,!/usr/bin/passwd root