定義上的區(qū)別:

成都創(chuàng)新互聯(lián)公司從2013年創(chuàng)立,先為烏當(dāng)?shù)确?wù)建站,烏當(dāng)?shù)鹊仄髽I(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為烏當(dāng)企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
su為switch user,即切換用戶的簡寫。su是最簡單的身份切換名,用su我們能夠進(jìn)行不論什么用戶的切換,一般都是su-username,然后輸入password就OK了,可是root用su切換到其他身份的時候是不需要輸入password的。
sudo是一種權(quán)限管理機(jī)制,依賴于/etc/sudoers,其定義了授權(quán)給哪個用戶可以以管理員的身份能夠執(zhí)行什么樣的管理命令。
格式上的區(qū)別:
su格式有兩種:su -l USERNAME、su USERNAME。
sudo格式:sudo -u USERNAME COMMAND。
密碼上的區(qū)別:
兩個命令的最大區(qū)別是:sudo命令需要輸入當(dāng)前用戶的密碼,su命令需要輸入root用戶的密碼。
日志記錄上的區(qū)別:
盡管sudo命令以目標(biāo)用戶的身份執(zhí)行命令,但是它們會使用sudoer所配置的用戶名來記錄是誰執(zhí)行的命令。而su命令是無法直接跟蹤記錄用戶切換到root用戶之后執(zhí)行了什么操作。
靈活性上的區(qū)別:
sudo命令比su命令靈活很多,甚至可以限制sudo用戶可以訪問哪些命令。換句話來講,用戶通過sudo命令只能訪問他們工作需要的命令,而su命令讓用戶有權(quán)限做任何事情。
主要區(qū)別如下:
1、內(nèi)容不同
su命令:用于切換用戶,substitute英文含義“代替”的意思。
sudo命令:為superuser do 的簡寫,即使用超級用戶來執(zhí)行命令,一般是指root用戶。
2、用法不同
su命令:不加用戶名默認(rèn)是切換為root用戶,切當(dāng)前目錄不改變,其他環(huán)境變量不變。
sudo命令:查看當(dāng)前用戶可以用sudo執(zhí)行的命令都有哪些。
3、環(huán)境不同
su命令:切換到root用戶,但是并沒有轉(zhuǎn)到root用戶家目錄下,即沒有改變用戶的環(huán)境。
sudo命令:是當(dāng)前用戶切換到root,然后以root身份執(zhí)行命令,執(zhí)行完成后,直接退回到當(dāng)前用戶,而這些的前提是要通過sudo的配置文件/etc/sudoers來進(jìn)行授權(quán)。
su和sudo各有優(yōu)點,適當(dāng)用于預(yù)期的用例時,兩者都表現(xiàn)不俗。我偏愛用su處理自己的大部分工作,因為它最適合我和我的工作流程。
1、切換root身份不同
su命令:su只是切換了root身份,但shell環(huán)境仍然是普通用戶的shell;而su-連用戶和shell環(huán)境一切切換成root身份了。只有切換了shell環(huán)境才不會出現(xiàn)PATH環(huán)境變量錯誤,報command not found的錯誤。
su-命令:su切換成root用戶以后,pwd一下,發(fā)現(xiàn)工作目錄仍然是普通用戶的工作目錄;而用su-命令切換以后,工作目錄變成root的工作目錄了。
2、采用su deploy命令后,取目標(biāo)用戶不同
su命令:su不會讀取目標(biāo)用戶的環(huán)境配置文件。
su-命令:su-讀取目標(biāo)用戶的環(huán)境配置文件。
3、service命令
su命令:使用su root切換到root用戶后,不可以使用service命令;
su-命令:使用su-后,就可以使用service命令了。
4、用echo $PATH命令后,環(huán)境量不同
su命令:環(huán)境量變?yōu)閡sr。
su-命令:環(huán)境量變?yōu)閛racle。
su的全稱并不是super user,而是switch user,是不是就突然明白了?是切換用戶的意思。su的一般使用方法是su或者su -,兩種方法雖然只差了1個字符,但也是有比較大的差異的。
加入了-參數(shù),就是login-shell的方式,也就是說切換到另一個用戶之后,當(dāng)前的shell會加載對應(yīng)的環(huán)境變量和各種設(shè)置;
如果沒有加入-參數(shù),就是non-login-shell的方式,也就是說當(dāng)前的shell還是加載切換之前的那個用戶的環(huán)境變量以及各種設(shè)置。
如果不想因為切換到另一個用戶導(dǎo)致自己在當(dāng)前用戶下的設(shè)置不可用,那么就可以用non-login-shell的方式;如果切換用戶后,需要用到該用戶的各種環(huán)境變量,那么使用login-shell方式即可。
1、內(nèi)容不同
su命令:用于切換用戶,substitute英文含義“代替”的意思。
sudo命令:為superuser do 的簡寫,即使用超級用戶來執(zhí)行命令,一般是指root用戶。
2、用法不同
su命令:不加用戶名默認(rèn)是切換為root用戶,切當(dāng)前目錄不改變,其他環(huán)境變量不變。
sudo命令:查看當(dāng)前用戶可以用sudo執(zhí)行的命令都有哪些。
3、環(huán)境不同
su命令:切換到root用戶,但是并沒有轉(zhuǎn)到root用戶家目錄下,即沒有改變用戶的環(huán)境。
sudo命令:是當(dāng)前用戶切換到root,然后以root身份執(zhí)行命令,執(zhí)行完成后,直接退回到當(dāng)前用戶,而這些的前提是要通過sudo的配置文件/etc/sudoers來進(jìn)行授權(quán)。
su和sudo各有優(yōu)點,適當(dāng)用于預(yù)期的用例時,兩者都表現(xiàn)不俗。我偏愛用su處理自己的大部分工作,因為它最適合我和我的工作流程。
網(wǎng)站標(biāo)題:linux命令su,linux命令suid
標(biāo)題來源:http://chinadenli.net/article31/dsiccsd.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、定制網(wǎng)站、標(biāo)簽優(yōu)化、面包屑導(dǎo)航、、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)