標籤:style io ar 使用 sp on 檔案 log bs
1、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 指令後退出變回原使用者。
su [使用者名稱]
a>在root使用者下, 輸入 su 普通使用者. 則切換至普通使用者, 從root切換到變通使用者不要求輸入密碼;
b>在普通使用者下, 輸入 su [使用者名稱] 提示 password: 輸入使用者的PASSWORD, 則切換至該使用者;
2、su -
su 是切換到其他使用者,但是不切換環境變數(可以用export命令查看);su - 是完整的切換到一個使用者環境;
所以建議大家切換使用者的時候,盡量使用 su - linuxso 這樣 否則可能發現某些命令執行不了;
3、sudo
由於su 對切換到超級許可權使用者root後,許可權的無限制性,所以su並不能擔任多個管理員所管理的系統。如果用su 來切換到超級使用者來管理系統,也不能明確哪些工作是由哪個管理員進行的操作。特別是對於伺服器的管理有多人蔘與管理時,最好是針對每個管理員的技術特長和 管理範圍,並且有針對性的下放給許可權,並且約定其使用哪些工具來完成與其相關的工作,這時我們就有必要用到 sudo。
通過sudo,我們能把某些超級許可權有針對性的下放,並且不需要普通使用者知道root密碼,所以sudo 相對於許可權無限制性的su來說,還是比較安全的,所以sudo 也能被稱為受限制的su ;另外sudo 是需要授權許可的,所以也被稱為授權許可的su;
sudo 執行命令的流程是目前使用者切換到root(或其它指定切換到的使用者),然後以root(或其它指定的切換到的使用者)身份執行命令,執行完成後,直接退回到目前使用者;而這些的前提是要通過sudo的設定檔/etc/sudoers來進行授權;
[linux command] su \su -\ sudo