linux su執(zhí)行命令詳解
linux su執(zhí)行命令詳解
su命令是linux下的一個(gè)命令,那么它有什么用處呢?下面由學(xué)習(xí)啦小編為大家整理了linux su命令的相關(guān)知識(shí),希望對(duì)大家有幫助!
linux su命令說(shuō)明
建議大家切換用戶(hù)的時(shí)候 使用 su - root 這樣,否則可能發(fā)現(xiàn)某些命令執(zhí)行不了。
關(guān)于su 、su - 及 sudo的區(qū)別 請(qǐng)往下看
1.linux su命令作用
su的作用是變更為其它使用者的身份,超級(jí)用戶(hù)除外,需要鍵入該使用者的密碼。
2.linux su命令使用方式
su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]
3.linux su命令參數(shù)說(shuō)明
-f , –fast:不必讀啟動(dòng)文件(如 csh.cshrc 等),僅用于csh或tcsh兩種Shell。
-l , –login:加了這個(gè)參數(shù)之后,就好像是重新登陸一樣,大部分環(huán)境變量(例如HOME、SHELL和USER等)都是以該使用者(USER)為主,并
且工作目錄也會(huì)改變。如果沒(méi)有指定USER,缺省情況是root。
-m, -p ,–preserve-environment:執(zhí)行su時(shí)不改變環(huán)境變數(shù)。
-c command:變更賬號(hào)為USER的使用者,并執(zhí)行指令(command)后再變回原來(lái)使用者。
–help 顯示說(shuō)明文件
–version 顯示版本資訊
USER:欲變更的使用者賬號(hào),
ARG: 傳入新的Shell參數(shù)。
4.linux su命令例子
su -c ls root 變更帳號(hào)為 root 并在執(zhí)行 ls 指令后退出變回原使用者。
su [用戶(hù)名]
a>在root用戶(hù)下, 輸入 su 普通用戶(hù). 則切換至普通用戶(hù), 從root切換到變通用戶(hù)不需要密碼
b>在普通用戶(hù)下, 輸入 su [用戶(hù)名]
提示 password:
輸入用戶(hù)的PASSWORD, 則切換至該用戶(hù)
擴(kuò)展閱讀一:Linux下 su命令與su - 命令有什么區(qū)別?
su 是切換到其他用戶(hù),但是不切換環(huán)境變量(比如說(shuō)那些export命令查看一下,就知道兩個(gè)命令的區(qū)別了)
su - 是完整的切換到一個(gè)用戶(hù)環(huán)境
所以建議大家切換用戶(hù)的時(shí)候,盡量使用 su - linuxso 這樣 否則可能發(fā)現(xiàn)某些命令執(zhí)行不了
擴(kuò)展閱讀二:su和sudo的區(qū)別
由于su 對(duì)切換到超級(jí)權(quán)限用戶(hù)root后,權(quán)限的無(wú)限制性,所以su并不能擔(dān)任多個(gè)管理員所管理的系統(tǒng)。如果用su 來(lái)切換到超級(jí)用戶(hù)來(lái)管理系統(tǒng),也不能明確哪些工作是由哪個(gè)管理員進(jìn)行的操作。特別是對(duì)于服務(wù)器的管理有多人參與管理時(shí),最好是針對(duì)每個(gè)管理員的技術(shù)特長(zhǎng)和 管理范圍,并且有針對(duì)性的下放給權(quán)限,并且約定其使用哪些工具來(lái)完成與其相關(guān)的工作,這時(shí)我們就有必要用到 sudo。
通過(guò)sudo,我們能把某些超級(jí)權(quán)限有針對(duì)性的下放,并且不需要普通用戶(hù)知道root密碼,所以sudo 相對(duì)于權(quán)限無(wú)限制性的su來(lái)說(shuō),還是比較安全的,所以sudo 也能被稱(chēng)為受限制的su ;另外sudo 是需要授權(quán)許可的,所以也被稱(chēng)為授權(quán)許可的su;
sudo 執(zhí)行命令的流程是當(dāng)前用戶(hù)切換到root(或其它指定切換到的用戶(hù)),然后以root(或其它指定的切換到的用戶(hù))身份執(zhí)行命令,執(zhí)行完成后,直接退回到當(dāng)前用戶(hù);而這些的前提是要通過(guò)sudo的配置文件/etc/sudoers來(lái)進(jìn)行授權(quán)