Sudo
超級使用者組或使用者?
我在 Oracle Exadata 中使用以下命令:
sudo su - odiadmin
當 sudo 提示輸入我自己的密碼時,我想知道是我將自己升級為超級使用者還是切換到超級使用者“odiadmin”。此外,odiadmin 是超級使用者組還是只是另一個使用者。
任何人都可以解釋一下嗎?
sudo
作為超級使用者(即root
)執行給定的命令。它執行的命令是su - odiadmin
,它替換了使用者odiadmin
- 所以這是另一個使用者,而不是組,它本身不是某種意義上的超級使用者root
。使其成為登錄 shell的
-
標誌su
,並且您沒有以該使用者身份執行特定命令,因此您以該使用者身份進入新 shell - 基本上與您以該使用者身份啟動新會話相同通過telnet
或ssh
。效果也與您剛剛完成一樣
su - odiadmin
,但如果您這樣做了,您需要知道該帳戶的密碼。使用sudo
意味著您只需要知道自己的密碼,這使您的生活更簡單,但需要sudo
配置服務以允許您發出su
命令,因此如果未正確執行,可能會產生安全隱患。所以……您將自己升級為超級使用者(
root
),但只是切換到非超級使用者odiadmin
帳戶。當您在 shell 中時,因為odiadmin
您沒有任何root
權限,或者您的原始帳戶的任何權限,例如,您只能查看由 擁有的文件odiamdin
,或者也位於其中的組中的文件odiadmin
,或者是世界可讀的文件。您可能看不到您自己的主目錄中的文件,如果該目錄具有 700 之類的合理權限。並且您無法執行任何僅限 root 的執行檔,例如useradd
. 你不是root
在你執行那個命令之後。