我們?cè)谶\(yùn)維Linux服務(wù)器中的時(shí)候是不是經(jīng)常看到有需要用到的命令su、sudo、sudo su、sudo -i這幾個(gè),有些時(shí)候不用還不行,畢竟有些用戶權(quán)限是沒(méi)有足夠權(quán)限需要提權(quán)的。但是這幾個(gè)命令到底有什么區(qū)別以及如何用呢?在這篇文章中,我們就簡(jiǎn)單的梳理。
sudo:暫時(shí)切換到超級(jí)用戶模式以執(zhí)行超級(jí)用戶權(quán)限,提示輸入密碼時(shí)該密碼為當(dāng)前用戶的密碼,而不是超級(jí)賬戶的密碼。不過(guò)有時(shí)間限制,Ubuntu默認(rèn)為一次時(shí)長(zhǎng)15分鐘。
su:切換到某某用戶模式,提示輸入密碼時(shí)該密碼為切換后賬戶的密碼,用法為“su賬戶名稱”。如果后面不加賬戶時(shí)系統(tǒng)默認(rèn)為root賬戶,密碼也為超級(jí)賬戶的密碼。沒(méi)有時(shí)間限制。
Sudo -i:為了頻繁的執(zhí)行某些只有超級(jí)用戶才能執(zhí)行的權(quán)限,而不用每次輸入密碼,可以使用該命令。提示輸入密碼時(shí)該密碼為當(dāng)前賬戶的密碼。沒(méi)有時(shí)間限制。執(zhí)行該命令后提示符變?yōu)椤?”而不是“$”。想退回普通賬戶時(shí)可以執(zhí)行“exit”或“l(fā)ogout”。
sudo -i直接運(yùn)行sudo命令加-i參數(shù)
sudo su 運(yùn)行sudo命令給su命令提權(quán),運(yùn)行su命令。 。sudo -i運(yùn)行結(jié)果 PWD=/root
sudo su 運(yùn)行結(jié)果 PWD=/home/用戶名(當(dāng)前用戶主目錄)
具體的用法:
sudo
sudo是一種權(quán)限管理機(jī)制,依賴于/etc/sudoers,其定義了授權(quán)給哪個(gè)用戶可以以管理員的身份能夠執(zhí)行什么樣的管理命令;
格式:sudo-u USERNAME COMMAND
默認(rèn)情況下,系統(tǒng)只有root用戶可以執(zhí)行sudo命令。需要root用戶通過(guò)使用visudo命令編輯sudo的配置文件/etc/sudoers,才可以授權(quán)其他普通用戶執(zhí)行sudo命令。
sudo的運(yùn)行有這樣一個(gè)流程:
1).當(dāng)用戶運(yùn)行sudo時(shí),系統(tǒng)于/etc/sudoers文件里查找該用戶是否有運(yùn)行sudo的權(quán)限;
2).若用戶具有可運(yùn)行sudo的權(quán)限。那么讓用戶輸入用戶自己的password,注意這里輸入的是用戶自己的password.
3).假設(shè)password正確。進(jìn)行sudo后面的命令,root運(yùn)行sudo是不須要輸入password的,切換到的 身份與運(yùn)行者身份同樣的時(shí)候。也不須要輸入password。
su
su為switch user,即切換用戶的簡(jiǎn)寫(xiě)。
su是最簡(jiǎn)單的身份切換名,用su我們能夠進(jìn)行不論什么用戶的切換,一般都是su — username,然后輸入password就ok了,可是root用su切換到其它身份的時(shí)候是不須要輸入password的。
格式為兩種:
su —I USERNAME(—l為login,即登陸的簡(jiǎn)寫(xiě))
su USERNAME
如果不指定USERNAME (用戶名) ,默認(rèn)即為root,所以切換到root的身份的命令即為: su —root或su—,su root 或su。
su USERNAME,與su— USERNAME的不同之處如下:
su—USERNAME切換用戶后,同時(shí)切換到新用戶的工作環(huán)境中。
su USERNAME切換用戶后,不改變?cè)脩舻墓ぷ髂夸?,及其他環(huán)境變量目錄。
su-
su -, su -I或su -login 命令改變身份時(shí),也同時(shí)變更工作目錄,以及HOME, SHELL, USER, LOGNAME。此外,也會(huì)變更PATH變量。用su—命令則默認(rèn)轉(zhuǎn)換成成root用戶了。
而不帶參數(shù)的“su命令”不會(huì)改變當(dāng)前工作目錄以及HOME,SHELL,USER,LOGNAME。只是擁有了root的權(quán)限而已。
注意:su -使用root的密碼,而sudo su使用用戶密碼